7

Amazon Linux に AWS Codedeploy Agent ファイルをダウンロードしようとしています。Amazon Linux のhttp://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-run-agent.htmlに記載されている指示に従い、適切なインスタンス プロファイル、サービス ロールなどを作成しました。最新 (Amazon Linux、CLI パッケージ、これは真新しいインスタンスであり、少なくとも 3 つの真新しいインスタンスでこれを試しましたが、同じ結果が得られました)。すべてのインスタンスには、完全なアウトバウンド インターネット アクセスがあります。

ただし、S3 からインストールをダウンロードするための次のステートメントは常に失敗します。

aws s3 cp s3://aws-codedeploy-us-east-1/latest/install . --region us-east-1

エラーあり、HeadObject 操作の呼び出し時にクライアント エラー (403) が発生しました: Forbidden Completed 1 part(s) with ... file(s) left

誰でもこのエラーで私を助けることができますか?

4

2 に答える 2

17

IAMインスタンスプロファイルのCodedeployドキュメントによると、問題を理解しました

http://docs.aws.amazon.com/codedeploy/latest/userguide/how-to-create-iam-instance-profile.html

次のアクセス許可を IAM インスタンス プロファイルに付与する必要があります。

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "s3:Get*",
        "s3:List*"
      ],
      "Effect": "Allow",
      "Resource": "*"
    }
  ]
}

ただし、インスタンスが他のバケットに直接アクセスしたくないため、リソースをコード バケットに制限しました。しかし、エージェントをダウンロードできるようにするには、aws-codedeploy-us-east-1/* s3 リソースに追加のアクセス許可を与える必要があることがわかりました。これは、Codedeploy の IAM インスタンス プロファイルを設定するためのドキュメントではあまり明確ではありません。

于 2014-11-20T06:33:05.937 に答える
2

機能するより制限的なポリシー:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:Get*",
                "s3:List*"
            ],
            "Resource": [
                "arn:aws:s3:::aws-codedeploy-us-east-1/*",
                "arn:aws:s3:::aws-codedeploy-us-west-1/*",
                "arn:aws:s3:::aws-codedeploy-us-west-2/*",
                "arn:aws:s3:::aws-codedeploy-ap-south-1/*",
                "arn:aws:s3:::aws-codedeploy-ap-northeast-2/*",
                "arn:aws:s3:::aws-codedeploy-ap-southeast-1/*",
                "arn:aws:s3:::aws-codedeploy-ap-southeast-2/*",
                "arn:aws:s3:::aws-codedeploy-ap-northeast-1/*",
                "arn:aws:s3:::aws-codedeploy-eu-central-1/*",
                "arn:aws:s3:::aws-codedeploy-eu-west-1/*",
                "arn:aws:s3:::aws-codedeploy-sa-east-1/*"
            ]
        }
    ]
}
于 2016-07-23T16:20:54.200 に答える