从 s3 存储桶的子文件夹访问文件



我需要访问文件并从 s3 存储桶中的子文件夹打印其内容。我的文件 (file_abc( 位于 s3 存储桶中文件夹 (folder_abc( 的子文件夹 (subfolder_abc( 中。

我使用以下代码来执行此操作 -

s3_client = boto3.client('s3')
response = s3_client.get_object(Bucket='Bucket_abc',
Key='folder_abc/subfolder_abc' + "/" + 'file_abc')
result = str(response["Body"].read())
print (result)

我收到以下错误 -

botocore.exceptions.ClientError: An error occurred (AccessDenied) when calling the GetObject operation: Access Denied

如何访问子文件夹中的文件数据?

你能给我们看一下存储桶的权限吗?

您尝试读取文件的方式看起来正确,我假设您在读取该存储桶中的文件的权限方面存在问题。

如果您能向我们展示存储桶的权限以及您的职能执行角色,我们可以提供更多帮助。

下面是允许所有访问的策略示例:

{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Principal": "*",
"Action": "s3:*",
"Resource": [
"arn:aws:s3:::MyExampleBucket/*"
],
}
]
}

相关内容

  • 没有找到相关文章

最新更新