【发布时间】:2021-02-21 07:44:38
【问题描述】:
我正在尝试从另一个区域的 SageMaker 容器访问 S3 存储桶。
我可以使用以下代码列出 S3 存储桶中的所有文件夹:
import boto3
s3 = boto3.resource('s3', region_name='us-east-1')
bucket = s3.Bucket('bucket-name')
for my_bucket_object in bucket.objects.all():
print(my_bucket_object)
但是,get_object 失败,消息访问被拒绝。已向 S3 存储桶提供所有权限。
s3 = boto3.client('s3',region_name = 'us-east-1')
obj = s3.get_object(Bucket='bucket-name', Key = '2019/3/')
错误信息如下:
ClientError: An error occurred (AccessDenied) when calling the GetObject operation: Access Denied
有人可以指导为什么会这样吗?谢谢。
【问题讨论】:
-
您可能还拥有对存储桶内的各个文件的权限,因此对象级 ACL 也可以允许任何人访问该对象。
-
如何授予子文件夹和文件的权限?
标签: amazon-web-services amazon-s3 boto3 amazon-sagemaker