ana*_*nda 1 amazon-s3 amazon-web-services
AmazonS3ReadOnlyAccess。"Action": "s3:*",
"Effect": "Deny",
"Resource": "arn:aws:s3:::ananda-demo-bucket-1/",
"Principal": "*"
Run Code Online (Sandbox Code Playgroud)
但是,从我的 EC2 实例中,我仍然可以列出我的存储桶的内容。这是否意味着我无法使用自定义存储桶策略覆盖 AWS IAM 策略,或者我创建的存储桶策略是错误的?
是的,它确实可以覆盖该策略,但仅限于使用“拒绝”的情况。如果它包含允许,但 IAM 策略包含拒绝,则不会评估为允许。
为了使您的策略拒绝 S3 存储桶内的所有操作,存储桶策略中的资源应包含以下内容:
arn:aws:s3:::ananda-demo-bucket-1arn:aws:s3:::ananda-demo-bucket-1/*通过对您的主体执行此操作*将拒绝对所有内容的访问,因此您将无法再从任何资源(包括控制台)与此 S3 存储桶进行交互,在进行如此大的更改之前您应该意识到这一点。尝试限制您拒绝的操作,以便仍可以在控制台中使用 S3 存储桶的管理。
为了在任何权限评估中推广策略评估逻辑,如果存在以下任一情况的拒绝,则操作将被拒绝:
完整的评估流程如下所示
有关更多信息,请查看AWS 文档中的策略评估逻辑页面。