我最近设置了一个 IAM 角色来访问具有以下策略的存储桶:
{
"Statement": [
{
"Sid": "Stmt1359923112752",
"Action": [
"s3:*"
],
"Effect": "Allow",
"Resource": [
"arn:aws:s3:::<BUCKET_NAME>"
]
}
]
}
虽然我可以很好地列出存储桶的内容,但当我调用get_contents_to_filename
特定键时,我会收到boto.exception.S3ResponseError: S3ResponseError: 403 Forbidden
异常。
是否需要添加角色权限才能从 S3 获取密钥?我检查了单个密钥的权限,似乎没有明确禁止其他用户访问的内容;只有一个权限授予所有者完全权限。
为了完整起见,我验证了删除上面的角色策略会完全阻止对存储桶的访问,因此应用的策略不是问题。
谢谢!