apache / apache/libcloud

providing ACL fails with SignatureDoesNotMatch

Ouverte
#1,605 1 commentaire 0 réactions 0 personnes assignées Voir sur GitHub
stale
Langage dominant
Python
Étoiles
2.1k
Forks
931
Merge moyen
1 j 2 h
PR mergées (30 j)
4

Description

## 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)

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

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.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
aws, python
Domaine
cloud
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.