apache / apache/libcloud

providing ACL fails with SignatureDoesNotMatch

Đang mở
#1,605 1 bình luận 0 reaction 0 người được giao Xem trên GitHub
stale
Ngôn ngữ chính
Python
Star
2.1k
Fork
931
Merge trung bình
1 ngày 2 giờ
Pull request đã merge (30 ngày)
4

Mô tả

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

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
aws, python
Lĩnh vực
cloud
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.