我已经打开了对 S3 存储桶的公共(public)访问权限,我需要使用 python 从存储桶中下载带有文件的文件/文件夹。诀窍是我不想提供凭据(boto3 显然需要)。甚至可能吗?
最佳答案
您可以使用获取对象 来自 S3 REST API,连同 请求 Python 中的库。如果您向匿名用户授予 READ 访问权限,则可以在不使用授权 header 的情况下返回对象。
此类 S3 REST 调用的示例:
> GET /example-object HTTP/1.1
> Host: example-bucket.s3.<Region>.amazonaws.com
Python(粗略示例):
import requests
url = '/example-object'
headers = {'Host': 'example-bucket.s3.<Region>.amazonaws.com'}
r = requests.get(url, headers=headers)
Requests
GetObject
关于python - 使用 Python 从公共(public) AWS S3 下载文件/文件夹,无需凭证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62086013/