CloudFormation を使用するための最小特権のアクセス許可の設定 - AWS 規範ガイダンス

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

CloudFormation を使用するための最小特権のアクセス許可の設定

この章では、 サービスにアクセスして使用 AWS CloudFormation するためのアクセス許可を設定するオプションについて説明します。

ユーザーまたはサービスが CloudFormation を介して AWS リソースをプロビジョニングする場合、最初のステップは AWS Identity and Access Management (IAM) プリンシパルを介して CloudFormation サービスを呼び出すことです。この IAM プリンシパルには、CloudFormation スタックを作成するアクセス許可が必要です。次に、IAM プリンシパルは次のいずれかのアプローチを使用して CloudFormation を介してリソースをプロビジョニングします。

  • IAM プリンシパルがスタックオペレーションを CloudFormation サービスロールに渡さない場合、CloudFormation は IAM プリンシパルの認証情報を使用してスタックオペレーションを実行します。これがデフォルトです。したがって、CloudFormation スタックオペレーションを実行するアクセス許可に加えて、IAM プリンシパルには、使用する CloudFormation テンプレートで定義されているリソースをプロビジョニングするアクセス許可も必要です。例えば、IAM プリンシパルに Amazon Elastic Compute Cloud (Amazon EC2) インスタンスを作成するアクセス許可がない場合、Amazon EC2 インスタンスをプロビジョニングする CloudFormation スタックを作成することはできません。

  • IAM プリンシパルがスタックオペレーションを CloudFormation サービスロールに渡すと、CloudFormation はサービスロールを使用してスタックオペレーションを実行し、CloudFormation テンプレートでリソースをプロビジョニングします。この CloudFormation サービスロールは、IAM プリンシパル AWS のサービス に代わって をプロビジョニングするアクセス許可で定義する必要があります。このアプローチにより、CloudFormation テンプレートで定義された AWS リソースをプロビジョニングするアクセス許可を IAM プリンシパルに直接付与する必要がなくなります。IAM プリンシパルには CloudFormation スタック作成のアクセス許可が必要であり、CloudFormation は IAM プリンシパルのポリシーの代わりにサービスロールのポリシーを使用して呼び出しを行います。

サービスロールアプローチと最小特権の原則を使用することで、 AWS 環境でリソースプロビジョニングを標準化し、ユーザーが CloudFormation を通じてリソースを IaC としてプロビジョニングすることを要求できます。IAM プリンシパルにアタッチされたポリシーには、 AWS リソースを直接プロビジョニングするアクセス許可が含まれていないため、ユーザーは CloudFormation を使用してリソースをプロビジョニングする必要があります。

この章では、CloudFormation サービスと CloudFormation スタックへのアクセスを設定および管理するための以下のメカニズムについて説明します。

  • CloudFormation のアイデンティティベースのポリシー – このタイプのポリシーを使用して、CloudFormation にアクセスできる IAM プリンシパルとCloudFormation で実行できるアクションを設定します。

  • CloudFormation のサービスロール – CloudFormation がスタックをデプロイする IAM プリンシパルに代わってスタックリソースを作成、更新、または削除できるようにするサービスロールを作成します。サービスロールは IAM で作成され、1 つ以上のスタックに関連付けることができます。

  • CloudFormation スタックポリシー – このタイプのポリシーを使用して、スタックを更新できるタイミングを決定します。このタイプのポリシーは、スタックリソースが意図せずに更新または削除されるのを防ぐのに役立ちます。スタックポリシーが作成され、CloudFormation のスタックに関連付けられます。