IAM政策和S3政策

时间:2018-02-09 23:34:42

标签: amazon-web-services amazon-s3 amazon-iam

如果我有一个允许访问存储桶的IAM角色,那么该存储桶是否还需要存储桶策略来指定该角色具有访问权限?我可以只拥有一个或另一个吗?

示例:

我有一个IAM角色,说

    {
        "Action": [
            "s3:Get*",
            "s3:Put*",
            "s3:DeleteObject",
            "s3:List*"
        ],
        "Resource": [
            "arn:aws:s3:::bucketname/*"
        ],
        "Effect": "Allow"
    }

该存储桶附带了一个策略,但它没有包含有关上述语句的角色的任何内容。存储桶策略中没有拒绝语句。角色是否应该能够访问文件?

2 个答案:

答案 0 :(得分:1)

通常,您需要提供S3存储分区策略。

每当您向S3发出请求时,授权决策取决于所有适用的IAM策略,S3存储桶策略和S3 ACL的并集。

政策评估的顺序是:

  1. 有明确的拒绝吗?结果是拒绝。
  2. 是否有明确的允许?结果是允许的。
  3. (隐式默认值)结果为拒绝。

答案 1 :(得分:1)

以下是AWS中一篇有趣的文章,比较了IAM策略与存储桶策略与ACL

  

如果您对“此用户在AWS中可以做什么?”更感兴趣,那么IAM   政策可能是要走的路。你可以轻松回答这个问题   查找IAM用户,然后检查他们的IAM策略以查看   他们有什么权利。

     

如果您对“谁可以访问”更感兴趣   这个S3桶?“那么S3桶策略可能会更适合你。   你可以通过查看一个桶并检查它来轻松回答这个问题   桶政策。

https://aws.amazon.com/blogs/security/iam-policies-and-bucket-policies-and-acls-oh-my-controlling-access-to-s3-resources/