AWS S3多动作多效果策略保存报错,请求排查问题原因
问题原因及修正方案
你的策略错误出在第二个语句的资源与动作不匹配:
s3:DeleteBucket是针对存储桶本身的操作,必须绑定存储桶的ARN(不带/*后缀),但你当前指定的是桶内对象的路径(arn:aws:s3:::alex.santos-denydelete/*),这就导致该动作找不到对应的有效资源,触发了报错。
修正后的完整策略:
{ "Version":"2012-10-17", "Statement":[ { "Sid": "PublicReadForGetBucketObjects", "Effect": "Allow", "Action": "s3:GetObject", "Resource": "arn:aws:s3:::alex.santos-denydelete/*", "Principal": "*" }, { "Effect": "Deny", "Action": "s3:DeleteBucket", "Resource": "arn:aws:s3:::alex.santos-denydelete", "Principal": "*" } ] }
补充说明:
s3:GetObject是针对桶内对象的读取操作,资源指定桶名/*是正确的,覆盖桶内所有对象s3:DeleteBucket是删除存储桶的操作,只能绑定存储桶本身的ARN,不能指向桶内对象
内容的提问来源于stack exchange,提问作者Alex dos Santos
相关产品推荐
相关产品推荐

