apache / apache/libcloud

providing ACL fails with SignatureDoesNotMatch

Offen
#1,605 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
stale
Vorherrschende Sprache
Python
Sterne
2.1k
Forks
931
Ø Merge
1 T. 2 Std.
Gemergte PRs (30 T.)
4

Beschreibung

## Summary

When uploading a file to Storage (S3 or DigitalOcean Spaces), with the ACL header/parameter, the request fails with "SignatureDoesNotMatch" exception.

## Detailed Information
Demo code:
```py
container = ...
src = 'somefile.txt'
dst = 'somewhere/somefile.txt'
extra = {'acl': 'public-read'}
obj = driver.upload_object(src, container, dst, extra=extra)
```

Providing meta_data, and/or other information in the `extra` dict works just fine, it fails as soon as I provide any `acl` key/value.

- Libcloud version: 3.3.1
- Python version: 3.9.1

**Screenshots:**

AWS S3:

![Screenshot_1](https://user-images.githubusercontent.com/53948000/134159218-d51e6c0d-134f-4246-b0bc-518f35fcd894.png)

DigitalOcean Spaces:
![Screenshot_4](https://user-images.githubusercontent.com/53948000/134159275-96a70a40-9da5-4338-a081-a4a293178706.png)

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start at the storage driver's upload_object entry point and trace how the extra dictionary is handled for S3 and DigitalOcean Spaces. Reproduce the supplied upload with extra={'acl': 'public-read'} and compare it with metadata-only uploads, then verify that ACL requests no longer fail with SignatureDoesNotMatch.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
aws, python
Bereich
cloud
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.