前提条件 - AWS Config

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

前提条件

コンフォーマンスパックをデプロイする前に、AWS Config 記録をオンにします。

AWS Config 記録の開始

  1. AWS Management Console にサインインして、AWS Config コンソール (https://console.aws.amazon.com/config/) を開きます。

  2. ナビゲーションペインで [Settings] (設定) を選択します。

  3. 記録を開始するには、[Recording is off] (記録はオフ) の [Turn on] (有効) を選択します。プロンプトが表示されたら、[Continue] (続行) をクリックします。

修復を伴うコンフォーマンスパックを使用するための前提条件

修復が含まれるサンプルテンプレートを使用してコンフォーマンスパックをデプロイする前に、修復ターゲットに基づいて、オートメーション継承ロールやその他の AWS リソースなどの適切なリソースを作成する必要があります。

SSM ドキュメントを使用して修復に使用している既存の自動化ロールがある場合は、そのロールの ARN を直接提供できます。リソースがある場合は、テンプレートにリソースを提供できます。

注記

組織に修復を伴うコンフォーマンスパックをデプロイする場合、組織の管理アカウント ID を指定する必要があります。それ以外の場合は、組織コンフォーマンスパックのデプロイ時に、AWS Config によって、管理アカウント ID をメンバーアカウント ID に自動的に置き換えます。

AWS Config は、オートメーション実行ロールの AWS CloudFormation 組み込み関数をサポートしていません。ロールの正確な ARN を文字列として指定する必要があります。

正確な ARN を渡す方法の詳細については、「コンフォーマンスパックテンプレート」を参照してください。サンプルテンプレートの使用中に、組織のアカウント ID と管理者アカウント ID を更新します。

1 つ以上の AWS Config ルールでコンフォーマンスパックを使用する場合の前提条件

1 つ以上のカスタム AWS Config ルールを含むコンフォーマンスパックをデプロイする前に、AWS Lambda 関数や対応する実行ロールなどの適切なリソースを作成します。

既存のカスタム AWS Config ルールがある場合は、AWS Lambda 関数の ARN を直接指定して、そのカスタムルールの別のインスタンスをパックの一部として作成できます。

既存のカスタム AWS Config ルールがない場合は、AWS Lambda 関数を作成し、その Lambda 関数の ARN を使用できます。詳細については、「AWS Config カスタムルール」を参照してください。

AWS Lambda 関数が別の AWS アカウント アカウントに存在する場合は、適切なクロスアカウント AWS Lambda 関数の認可を使用して AWS Config ルールを作成できます。詳細については、ブログ投稿の「複数の AWS アカウント 間で AWS Config ルールを一元管理する方法」を参照してください。

同じアカウントバケットポリシー:

AWS Config がコンフォーマンスパックのアーティファクトを保存できるようにするには、Amazon S3 バケットを提供し、以下のアクセス許可を追加する必要があります。詳細については、バケットの命名規則を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSConfigConformsBucketPermissionsCheck", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::AccountId:role/aws-service-role/config-conforms.amazonaws.com/AWSServiceRoleForConfigConforms" ] }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::delivery-bucket-name" }, { "Sid": "AWSConfigConformsBucketDelivery", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::AccountId:role/aws-service-role/config-conforms.amazonaws.com/AWSServiceRoleForConfigConforms" ] }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::delivery-bucket-name/[optional] prefix/AWSLogs/AccountId/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } } ] }

クロスアカウントバケットポリシー:

AWS Config がコンフォーマンスパックのアーティファクトを保存できるようにするには、Amazon S3 バケットを提供し、以下のアクセス許可を追加する必要があります。詳細については、バケットの命名規則を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AWSConfigConformsBucketPermissionsCheck", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::SourceAccountId:role/aws-service-role/config-conforms.amazonaws.com/AWSServiceRoleForConfigConforms", "PutConformancePack API caller user principal like arn:aws:iam::SourceAccountId:user/userName " ] }, "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::awsconfigconforms-suffix in bucket name" }, { "Sid": "AWSConfigConformsBucketDelivery", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::SourceAccountId:role/aws-service-role/config-conforms.amazonaws.com/AWSServiceRoleForConfigConforms" ] }, "Action": "s3:PutObject", "Resource": "arn:aws:s3:::awsconfigconforms-suffix in bucket name/[optional] prefix/AWSLogs/AccountID/Config/*", "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } } }, { "Sid": " AWSConfigConformsBucketReadAccess", "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::SourceAccountId:role/aws-service-role/config-conforms.amazonaws.com/AWSServiceRoleForConfigConforms" ] }, "Action": "s3:GetObject", "Resource": "arn:aws:s3:::awsconfigconforms-suffix in bucket name/[optional] prefix/AWSLogs/AccountID/Config/*" } ] }
注記

クロスアカウントのコンフォーマンスパックをデプロイする場合、Amazon S3 の配信バケットの名前は awsconfigconforms で始まる必要があります。

組織コンフォーマンスパックの前提条件

入力テンプレートに自動修復設定がある場合は、その修復のオートメーション実行ロール ARN をテンプレートで指定します。指定した名前のロールが、組織のすべてのアカウント (管理およびメンバー) に存在することを確認します。PutOrganizationConformancePack を呼び出す前に、すべてのアカウントでこのロールを作成する必要があります。このロールを手動で作成することも、AWS CloudFormation スタックセットを使用してすべてのアカウントでこのロールを作成することもできます。

テンプレートで AWS CloudFormation 組み込み関数 Fn::ImportValue を使用して特定の変数をインポートする場合、その変数は、その組織のすべてのメンバーアカウントで Export Value として定義する必要があります。

カスタム AWS Config ルールについては、複数の AWS アカウント 間で AWS Config ルールを一元管理する方法のブログを参照して適切なアクセス権限を設定してください。

組織のバケットポリシー:

AWS Config がコンフォーマンスパックのアーティファクトを保存できるようにするには、Amazon S3 バケットを提供し、以下のアクセス許可を追加する必要があります。詳細については、バケットの命名規則を参照してください。

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowGetObject", "Effect": "Allow", "Principal": "*", "Action": [ "s3:GetObject", "s3:PutObject" ], "Resource": "arn:aws:s3:::awsconfigconforms-suffix in bucket name/*", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "customer_org_id" }, "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::*:role/aws-service-role/config-conforms.amazonaws.com/AWSServiceRoleForConfigConforms" } } }, { "Sid": "AllowGetBucketAcl", "Effect": "Allow", "Principal": "*", "Action": "s3:GetBucketAcl", "Resource": "arn:aws:s3:::awsconfigconforms-suffix in bucket name", "Condition": { "StringEquals": { "aws:PrincipalOrgID": "customer_org_id" }, "ArnLike": { "aws:PrincipalArn": "arn:aws:iam::*:role/aws-service-role/config-conforms.amazonaws.com/AWSServiceRoleForConfigConforms" } } } ] }
注記

コンフォーマンスパックを組織にデプロイする場合、Amazon S3 の配信バケットの名前は awsconfigconforms で始まる必要があります。