Implantar no Elastic Beanstalk da S3 dá “Você não tem permissão” - quem é “você”?

1

Estou testando o AWS e o Elastic Beanstalk e faço o Beanstalk executar uma versão que foi carregada manualmente.

Quando tento atualizar a versão por meio da linha de comando, a linha de comando retorna ok, mas o Beanstalk mostra um evento de erro.

[ec2-user@ip-172-31-35-38 ~]$ /usr/bin/aws elasticbeanstalk update-environment --environment-name play-app-test --version-label play-app-1051 --region us-east-1
True    play-app play-app-test.elasticbeanstalk.com       2015-09-27T04:05:25.486Z        2015-09-27T06:07:28.031Z                .....us-east-1.elb.amazonaws.com   e-jk8fyjd3dt    play-app-test    Grey    64bit Amazon Linux 2015.03 v2.play-app-1051Node.js
TIER    WebServer       Standard
[ec2-user@ip-172-31-35-38 ~]$

Service:Amazon S3, Message:You do not have permission to perform the 's3:ListBucket' action. Verify that your S3 policies and your ACLs allow you to perform these actions.

Quem exatamente é que não tem permissão?

A função de permissões de saúde do meu ambiente do Beanstalk é aws-elasticbeanstalk-service-role , à qual associei uma política que concede acesso ao S3 (uso a mesma política para o usuário que carregou a versão para o S3 e funcionou lá).

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListAllMyBuckets"
            ],
            "Resource": "arn:aws:s3:::*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:ListBucket",
                "s3:GetBucketLocation"
            ],
            "Resource": "arn:aws:s3:::play-app-builds"
        },
        {
            "Effect": "Allow",
            "Action": [
                "s3:*"
            ],
            "Resource": "arn:aws:s3:::play-app-builds/*"
        }
    ]
}

A função de perfil da instância do servidor de ambiente do Beanstalk é aws-elasticbeanstalk-ec2-role , que também tem a política acima anexada.

Liguei o CloudTrail. Ele mostra a chamada UpdateEnvironment , mas não mostra nenhuma chamada S3 depois disso. Não tenho certeza se o CloudTrail mostra chamadas com falha ou não.

Dentro do S3, eu mudei para o repositório de builds, mas nada foi registrado.

O que estou perdendo?

    
por Sam 27.09.2015 / 08:22

1 resposta

3

Você é quem quer que seja aws iam get-user (com sem nome de usuário ) diz que você é.

    
por 27.09.2015 / 08:33