Amazon web services S3存储桶和对象访问

Amazon web services S3存储桶和对象访问,amazon-web-services,amazon-s3,amazon-iam,Amazon Web Services,Amazon S3,Amazon Iam,根据我的理解,在未授予访问权限的情况下,任何IAM用户都无法访问S3存储桶/对象。但是在我的用例中,我能够访问它 我是否误解了S3中的安全策略。 这是我的用例,我在AWS中有root帐户,比如root用户。这个用户创建了两个IAM用户,比如管理员和测试用户。和根用户向两个IAM用户授予了S3FullAccess权限 现在我以管理员身份登录并创建了一个Bucket(比如Test)。并启用“阻止所有公共访问” 现在有了另一个IAM用户,即使启用了“阻止所有公共访问”,我仍然能够访问测试存储桶。 理想

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

我是否误解了S3中的安全策略。 这是我的用例,我在AWS中有root帐户,比如root用户。这个用户创建了两个IAM用户,比如管理员和测试用户。和根用户向两个IAM用户授予了S3FullAccess权限

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

现在有了另一个IAM用户,即使启用了“阻止所有公共访问”,我仍然能够访问测试存储桶。 理想情况下,它不应该是正确的。测试用户在访问测试存储桶时应获得“拒绝访问”权限。 如果我遗漏了什么,我们将非常感谢您的帮助

谢谢 AWS学员

和根用户向两个IAM用户授予了S3FullAccess权限

这就是为什么您的两个用户都能够看到bucket的原因,因为他们已将以下策略附加到该用户:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "s3:*",
            "Resource": "*"
        }
    ]
}
从用户中删除此策略后,将看到以下错误:

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

换句话说,如果公众可以访问您的bucket,那么任何有权访问对象s3url的人都可以直接访问该对象


您可以通过使用bucket策略来限制对bucket的访问,但从IAM中的测试用户中删除S3FullAdminAccess更有意义。

Hi Pacifist\u AWS,如果我删除了对测试用户的S3FullAccess,则可以看到“拒绝访问”错误。但是,有没有其他方法可以限制测试用户在不删除“S3FullAccess”@BabuGali的情况下不访问其他用户的bucket?您删除S3FullAccess并使用bucket策略显式提供对bucket的访问如何。