У меня есть этот сценарий, и я пытался понять его в течение некоторого времени. Дело в том, что у меня есть корзина S3, где каждый может анонимно загрузить ТОЛЬКО в корзину, т.е. без входа в систему. Таким образом, они имеют только разрешения на запись - но не могут просматривать или делать что-либо еще. Когда элемент добавлен в корзину, я могу зайти и просмотреть его, загрузить, отредактировать и т. Д., Чтобы получить полные права (я владелец корзины).
Проблема: я установил политику, которая разрешает анонимную загрузку в мое ведро, а затем позволяет мне видеть элементы в хранилище S3 - однако у меня нет прав что-либо делать с файлом.
Что я делаю не так?
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "allow-anon-put",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "s3:PutObject",
"Resource": "arn:aws:s3:::testbucket123/*",
"Condition": {
"StringEquals": {
"s3:x-amz-acl": "bucket-owner-full-control"
}
}
},
{
"Sid": "deny-other-actions",
"Effect": "Deny",
"NotPrincipal": {
"AWS": "arn:aws:iam::123:root"
},
"NotAction": [
"s3:PutObject",
"s3:PutObjectAcl"
],
"Resource": "arn:aws:s3:::testbucket123/*"
}
]
}
Любая помощь или советы будут оценены ... или есть лучший способ написания политики для достижения этой цели?