Хорошо, вы можете начать с этой политики и попробовать изменить ее, чтобы добавить все свои предложения. В этой политике действия по удалению разрешены только пользователю учетной записи root. Так что добавьте список и напишите действие, чтобы эти действия мог выполнять только пользователь root.
{
"Version": "2012-10-17",
"Id": "Policy1588186664547",
"Statement": [
{
"Sid": "Stmt1588186644754",
"Effect": "Deny",
"Principal": "*",
"Action": [
"s3:DeleteBucket",
"s3:DeleteBucketPolicy",
"s3:DeleteBucketWebsite",
"s3:DeleteObject",
"s3:DeleteObjectTagging",
"s3:DeleteObjectVersion",
"s3:DeleteObjectVersionTagging"
],
"Resource": [
"arn:aws:s3:::testpolycy4/*",
"arn:aws:s3:::testpolycy4"
],
"Condition": {
"StringNotEquals": {
"aws:userid": "102345678910"
}
}
}
]
}
Ответ на ваши вопросы:
- Как должны выглядеть мои настройки разрешений для корзины например (Блокировать настройку общего доступа)?
ЗАБЛОКИРОВАНО все
- Как должна выглядеть моя политика корзины?
Изменяйте эту политику, пока не получите желаемую политику.
Я думаю, вам не нужна политика IAM, просто с помощью политики корзины вы можете ограничить доступ к объекту и разрешить только пользователей, которых вы хотите.
Сложная часть - это просто разрешить доступ пользователю, если у него есть полный путь, я думаю, вы можете сделать это с помощью политики или лямбда-функции, но я не уверен насчет этого.