根据我对授予访问权限的理解,任何IAM用户都无法访问S3存储桶/对象。但是在我的用例中,我可以访问它。
我误解了S3中的安全策略。 这是我的用例,我有一个在AWS中具有root帐户的用户,例如root用户。该用户创建了两个IAM用户,例如 Admin 和 Test 用户。根用户也向两个IAM用户授予了 S3FullAccess 权限。
现在,我以管理员身份登录并创建了一个Bucket(例如 Tes t)。并启用了“阻止所有公共访问权限” 。
现在,即使启用了“阻止所有公共访问”,我仍然可以与另一个IAM用户一起访问测试存储桶。 理想情况下,它不应该正确。测试用户在访问测试存储区时应获得拒绝访问权限。 我是否有任何遗漏,我们将不胜感激
谢谢 AWS学习者
答案 0 :(得分:0)
并且根用户授予了两个IAM用户S3FullAccess权限
这是您两个用户都能看到存储桶的原因,因为他们在用户中附加了以下策略:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": "s3:*",
"Resource": "*"
}
]
}
您从用户中删除了此策略,您将看到以下错误:
答案 1 :(得分:0)
对存储桶的“阻止所有公共访问”是指您的组织外部,而不是IAM用户。
换句话说,如果公众可以访问您的存储桶,那么有权访问对象S3 URL的任何人都可以直接访问该对象。
您可以使用存储桶策略来限制对存储桶的访问,但是从IAM中的测试用户中删除S3FullAdminAccess更为有意义。