CloudFormationスタックARN — IaCリソースの参照
CloudFormationスタックARNを解析し、スタック名、一意のID形式、ネストされたスタックARNの仕組みを理解します。クロススタック参照とエクスポートについても解説。
詳細な説明
CloudFormationスタックARNの形式
CloudFormationスタックARNには、リソース部分内にスラッシュで接続されたスタック名と一意の識別子の両方が含まれています。
ARNの例
arn:aws:cloudformation:us-east-1:123456789012:stack/my-vpc-stack/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111
解析されたコンポーネント
| コンポーネント | 値 |
|---|---|
| Partition | aws |
| Service | cloudformation |
| Region | us-east-1 |
| Account ID | 123456789012 |
| Resource Type | stack |
| Resource ID | my-vpc-stack/a1b2c3d4-5678-90ab-cdef-EXAMPLE11111 |
スタック名 + 一意のID
リソース部分にはスラッシュで区切られた2つの部分が含まれています:人間が読めるスタック名(my-vpc-stack)とUUID(a1b2c3d4-...)。UUIDは一意性を保証します。同じ名前のスタックを削除して再作成すると、新しいUUIDが付与され、新しいARNになります。
ネストされたスタックARN
ネストされたスタックには自動生成された名前の独自のARNがあります:
arn:aws:cloudformation:us-east-1:123456789012:stack/my-vpc-stack-NetworkSubnets-ABC123/uuid
ネストされたスタック名には親スタック名がプレフィックスとして含まれ、階層を識別しやすくなっています。
StackSet ARN
マルチアカウント/マルチリージョンデプロイのためのCloudFormation StackSetsは異なるリソースタイプを使用します:
arn:aws:cloudformation:us-east-1:123456789012:stackset/my-org-baseline:a1b2c3d4-uuid
クロススタック参照
CloudFormationエクスポートはスタックARNを暗黙的に使用します。スタックAが値をエクスポートしてスタックBがそれをインポートすると、CloudFormationはスタックARNを使用して依存関係を追跡します。スタックBがスタックAのエクスポートを参照している間は、スタックAを削除できません。
変更セット
変更セットはchangeSetリソースタイプ下の独自のARNを持ち、親スタックのARNコンポーネントを参照します。
ユースケース
デプロイログからスタックARNを解析して、環境全体のインフラストラクチャデプロイを追跡する場合。また、特定のスタックにCloudFormation権限を制限するIAMポリシーで使用され、本番インフラストラクチャの不正な変更を防止します。