如果我有一个允许访问存储桶的IAM角色,那么该存储桶是否还需要存储桶策略来指定该角色具有访问权限?我可以只拥有一个或另一个吗?
示例:
我有一个IAM角色,说
{
"Action": [
"s3:Get*",
"s3:Put*",
"s3:DeleteObject",
"s3:List*"
],
"Resource": [
"arn:aws:s3:::bucketname/*"
],
"Effect": "Allow"
}
该存储桶附带了一个策略,但它没有包含有关上述语句的角色的任何内容。存储桶策略中没有拒绝语句。角色是否应该能够访问文件?
答案 0 :(得分:1)
通常,您不需要提供S3存储分区策略。
每当您向S3发出请求时,授权决策取决于所有适用的IAM策略,S3存储桶策略和S3 ACL的并集。
政策评估的顺序是:
答案 1 :(得分:1)
以下是AWS中一篇有趣的文章,比较了IAM策略与存储桶策略与ACL
如果您对“此用户在AWS中可以做什么?”更感兴趣,那么IAM 政策可能是要走的路。你可以轻松回答这个问题 查找IAM用户,然后检查他们的IAM策略以查看 他们有什么权利。
如果您对“谁可以访问”更感兴趣 这个S3桶?“那么S3桶策略可能会更适合你。 你可以通过查看一个桶并检查它来轻松回答这个问题 桶政策。