ablog

不器用で落着きのない技術者のメモ

S3 の VPC エンドポイントポリシーに必要な arn

参考

Amazon S3 ゲートウェイエンドポイントは IAM ポリシードキュメントを使用してサービスへのアクセスを制限します。​Amazon ECR で必要な最小限の Amazon S3 バケットアクセス許可のみを許可するには、エンドポイントの IAM ポリシードキュメントを作成するときに Amazon ECR が使用する Amazon S3 バケットへのアクセスを制限します。
次の表は、Amazon ECR が必要とする Amazon S3 バケットポリシーのアクセス許可を示しています。

アクセス権限 説明
arn:aws:s3:::prod-region-starport-layer-bucket/* 各 Docker イメージのレイヤーを含む Amazon S3 バケットへのアクセスを提供します。Amazon ECR によってサポートされている AWS リージョンのリージョン ID (例: 米国東部 (オハイオ) リージョン の場合は us-east-2) を表します。
https://docs.aws.amazon.com/ja_jp/AmazonECR/latest/userguide/ecr-minimum-s3-perms.html

Q: VPC エンドポイントを設定して Amazon Linux AMI リポジトリへの接続を許可するにはどうすればよいですか?
インターネットにアクセスしなくても、VPC 内の yum リポジトリにアクセスすることが可能です。 お客様の VPC エンドポイントポリシーで、VPC から Amazon Linux AMI リポジトリをホストする S3 バケットへのトラフィックを許可する必要があります。

以下はこれを実現する VPC エンドポイントポリシーの例です。

{
  "Statement": [
    {
      "Sid": "Amazon Linux AMI Repository Access",
      "Principal": "*",
      "Action": [
        "s3:GetObject"
      ],
      "Effect": "Allow",
      "Resource": [
        "arn:aws:s3:::packages.*.amazonaws.com/*",
        "arn:aws:s3:::repo.*.amazonaws.com/*"
      ]
    }
  ]
}
https://aws.amazon.com/jp/amazon-linux-ami/faqs/#report