У меня есть пользователь, я назову его Alfred User, с прикрепленной политикой IAM следующим образом
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"s3:GetObject",
"s3:ListBucket"
],
"Resource": [
"arn:aws:s3:::my-bucket-name/*",
"arn:aws:s3:::my-bucket-name/",
"arn:aws:s3:::my-bucket-name"
]
}
]
}
В симуляторе IAM я получаю «Разрешено» для GetObject, используя эту политику и этот ARN: arn:aws:s3:::my-bucket-name/my-object.xml
В интерфейсе командной строки я получаю AccessDenied для следующей команды: aws s3 cp s3://my-bucket-name/my-object.xml temp/my-object.xml
Ошибка клиента (AccessDenied) произошла при вызове операции GetObject: доступ запрещен
Я просмотрел все, что мог придумать, но не могу объяснить это несоответствие. Что мне не хватает?
Вещи, которые я пробовал
"creds" здесь означает "ключи доступа к AWS IAM"
aws s3 ls s3://my-bucket-name/
- это работает с кредитами IAM Альфреда и с моими кредитамиОказывается, это были разрешения на ключ (ключи) KMS, которые шифруют эту корзину. Ключи принадлежат учетной записи root, поэтому я не мог найти их при обычном доступе к IAM и не мог увидеть политику для них.