CloudFrontディストリビューションARN — CDNリソースの参照

CloudFrontディストリビューションARNを解析し、グローバルサービスパターンとディストリビューションIDの形式を理解します。OACとS3オリジンアクセスパターンについても解説。

Networking

詳細な説明

CloudFrontディストリビューションARN

CloudFrontディストリビューションはグローバルリソースですが、S3とは異なり、ARNにはアカウントIDが含まれます。リージョンフィールドは空です。CloudFrontは単一のリージョンではなくエッジで動作するためです。

ARNの例

arn:aws:cloudfront::123456789012:distribution/E1234ABCDEF567

解析されたコンポーネント

コンポーネント
Partition aws
Service cloudfront
Region (空) — グローバルサービス
Account ID 123456789012
Resource Type distribution
Resource ID E1234ABCDEF567

ディストリビューションIDの形式

CloudFrontディストリビューションIDはEで始まり、その後に英数字文字列が続きます(例:E1234ABCDEF567)。このIDはドメイン名(d111111abcdef8.cloudfront.net)とAPI呼び出しで使用されます。

Origin Access Control(OAC)ARN

最新のCloudFrontセットアップでは、S3オリジンに安全にアクセスするためにOrigin Access Controlを使用します:

arn:aws:cloudfront::123456789012:origin-access-control/EABC123DEF456

キーグループARN

署名付きURL/CookieのためのCloudFrontキーグループ:

arn:aws:cloudfront::123456789012:key-group/abc123-def456

CloudFrontのIAMポリシー

IAMポリシーでのCloudFront ARNは、権限がすべてのディストリビューションまたはCloudFrontサービス全体に対して付与される傾向があるため、ワイルドカードを使用することが多いです:

{
  "Resource": "arn:aws:cloudfront::123456789012:distribution/*"
}

CloudFront + S3パターン

最も一般的なCloudFront設定はS3バケットオリジンを含みます。このセットアップでは、IAMでCloudFrontディストリビューションARNを参照し、ディストリビューションのオリジン設定でS3バケットARNを参照します。2つの異なるARN形式が連携して機能します。

ユースケース

CloudFormationやTerraformなどのインフラストラクチャ・アズ・コードツールによるCloudFrontディストリビューションの管理。ディストリビューションARNは、Origin Access Control(OAC)を使用してCloudFrontのみへの直接S3アクセスを制限する場合にS3バケットポリシーで参照されます。

試してみる — AWS ARN Parser

フルツールを開く