Я использую Васаби . У меня есть ведро s3 с включенным контролем версий. Я хочу иметь возможность перечислить все объекты, которые не были удалены . В моем ведре содержатся следующие объекты:
a.txt
b.txt
c.txt
c.txt
удалено.
Я получаю доступ к своей корзине s3 с IAM, который следует следующей политике:
{
"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
в корневой корзине и всех объектах, но это не сработало.
Как настроить политику, запрещающую пользователю отображать предыдущие версии / удаленные объекты?
Edit: я использую Wasabi, я только что заметил, что это поведение не соответствует поведению AWS S3. Я думаю, теперь они на их стороне.