Eu tenho um usuário, vou ligar para Alfred User, com política IAM anexada da seguinte forma
{
"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"
]
}
]
}
No simulador IAM, recebo "Permitido" para GetObject, usando esta política e este ARN:arn:aws:s3:::my-bucket-name/my-object.xml
Na CLI, recebo AccessDenied para o seguinte comando:aws s3 cp s3://my-bucket-name/my-object.xml temp/my-object.xml
Ocorreu um erro de cliente (AccessDenied) ao chamar a operação GetObject: Access Denied
Examinei tudo em que consigo pensar, mas não consigo explicar essa discrepância. o que estou perdendo?
Coisas que eu tentei
"creds" aqui significa "chaves de acesso AWS IAM"
- Simulador IAM - isso funciona
- Um conjunto diferente de credenciais IAM – isso funciona
- Usando
aws s3 ls s3://my-bucket-name/
- isso funciona com as credenciais IAM de Alfred e com minhas credenciais - Políticas comparadas a um bucket configurado de forma semelhante em uma conta diferente da AWS. As políticas são idênticas, pelo que posso dizer.
Responder1
Acontece que foram as permissões nas chaves KMS que criptografaram esse bucket. As chaves pertencem à conta root e, como tal, não consegui encontrá-las com meu acesso normal do IAM, nem consegui ver a política delas.