Amazon-Web-Services

從 S3 部署到 Elastic Beanstalk 給出“您沒有權限”——“您”是誰?

  • September 27, 2015

我正在測試 AWS 和 Elastic Beanstalk,並讓 Beanstalk 執行手動上傳的版本。

當我嘗試通過命令行更新版本時,命令行返回 ok 但 Beanstalk 顯示錯誤事件。

[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 ~]$

服務:Amazon S3,消息:您無權執行“s3:ListBucket”操作。驗證您的 S3 策略和 ACL 是否允許您執行這些操作。

沒有權限的到底是誰?

我的 Beanstalk 環境的健康權限角色是aws-elasticbeanstalk-service-role我附加的一個策略,授予對 S3 的訪問權限(我對將建構上傳到 S3 並在那里工作的使用者使用相同的策略)。

{
   "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/*"
       }
   ]
}

Beanstalk 環境伺服器的實例配置文件角色aws-elasticbeanstalk-ec2-role也附加了上述策略。

我打開了 CloudTrail。它顯示了UpdateEnvironment呼叫,但之後不顯示任何 S3 呼叫。我不確定 CloudTrail 是否顯示失敗的呼叫。

在 S3 中,我打開了建構儲存桶的登錄,但沒有記錄任何內容。

我錯過了什麼?

您就是aws iam get-user沒有使用者名)說您的​​人。

引用自:https://serverfault.com/questions/725067