我正在使用Wasabi。我有一个启用版本控制的s3存储桶。 我希望能够列出所有未删除的对象。我的存储桶包含以下对象:
a.txt
b.txt
c.txt
c.txt
已被删除。
我正在使用遵循以下策略的IAM访问s3存储桶:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:ListBucket",
"s3:GetBucketLocation"
],
"Resource": "arn:aws:s3:::MyBucket"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:DeleteObject",
"s3:PutObjectAcl"
],
"Resource": "arn:aws:s3:::MyBucket/*"
}
]
}
如果我列出对象(aws s3 ls s3://my-bucket
),它将返回所有对象,包括已删除的对象(其最新版本)。
为防止列出已删除的对象,我尝试在根存储桶和所有对象上deny
s3:ListBucketVersions
,但是它不起作用。
如何制定政策以防止用户列出以前的版本/删除的对象?
编辑:我正在使用Wasabi,我刚刚注意到此行为与AWS S3行为不一致。我想它现在就在他们这边。