S3存储桶和对象访问

时间:2019-09-12 18:50:39

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

根据我对授予访问权限的理解,任何IAM用户都无法访问S3存储桶/对象。但是在我的用例中,我可以访问它。

我误解了S3中的安全策略。 这是我的用例,我有一个在AWS中具有root帐户的用户,例如root用户。该用户创建了两个IAM用户,例如 Admin Test 用户。根用户也向两个IAM用户授予了 S3FullAccess 权限。

现在,我以管理员身份登录并创建了一个Bucket(例如 Tes t)。并启用了“阻止所有公共访问权限”

现在,即使启用了“阻止所有公共访问”,我仍然可以与另一个IAM用户一起访问测试存储桶。 理想情况下,它不应该正确。测试用户在访问测试存储区时应获得拒绝访问权限。 我是否有任何遗漏,我们将不胜感激

谢谢 AWS学习者

2 个答案:

答案 0 :(得分:0)

  

并且根用户授予了两个IAM用户S3FullAccess权限

这是您两个用户都能看到存储桶的原因,因为他们在用户中附加了以下策略:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "*"
        }
    ]
}

您从用户中删除了此策略,您将看到以下错误:

enter image description here

答案 1 :(得分:0)

对存储桶的“阻止所有公共访问”是指您的组织外部,而不是IAM用户。

换句话说,如果公众可以访问您的存储桶,那么有权访问对象S3 URL的任何人都可以直接访问该对象。

您可以使用存储桶策略来限制对存储桶的访问,但是从IAM中的测试用户中删除S3FullAdminAccess更为有意义。