AWS Config のアグリゲータの作成
AWS Config コンソールまたは AWS CLI を使用して、アグリゲータを作成できます。AWS Config から、[個々のアカウント ID を追加する] か、データを集約する元の [組織を追加する] を選択できます。AWS CLI には 2 つの異なる手順があります。
- Creating Aggregators (Console)
-
[アグリゲータ] ページで、データを集約するソースアカウント ID または組織とリージョンを指定して、アグリゲータを作成することができます。
AWS マネジメントコンソール にサインインして、AWS Config コンソール (https://console.aws.amazon.com/config/home
) を開きます。 -
[アグリゲータ] ページに移動し、[アグリゲータの作成] をクリックします。
-
[データのレプリケーションを許可] では、ソースアカウントからアグリゲータアカウントにデータをレプリケートするアクセス許可を AWS Config に付与します。
[AWS Config にソースアカウントからアグリゲータアカウントへのデータのレプリケートを許可する] を選択します。続行してアグリゲータを追加するには、このチェックボックスをオンにする必要があります。
-
[アグリゲータ名] に、アグリゲータの名前を入力します。
このアグリゲータ名は、最大 64 文字の英数字を含む一意の名前である必要があります。この名前には、ハイフンとアンダースコアを使用できます。
-
[ソースアカウントの選択] で、データの集約元となる [個々のアカウント ID を追加する] または [組織の追加] を選択します。
注記
[個々のアカウント ID を追加する] を使用してソースアカウントを選択する場合は、認可が必要です。
-
[個々のアカウント ID を追加する] を選択した場合は、アグリゲータアカウントの個別のアカウント ID を追加できます。
-
アカウント ID を追加するには、[ソースアカウントの追加] を選択します。
-
[AWS アカウント アカウント ID の追加] をクリックして、カンマで区切られた AWS アカウント ID を手動で追加します。現在のアカウントからデータを集約する場合は、アカウントのアカウント ID を入力します。
または
[ファイルのアップロード] をクリックして、カンマで区切られた AWS アカウント ID のファイル (.txt または .csv) をアップロードします。
-
[ソースアカウントの追加] を選択して、選択を確定します。
-
-
[組織の追加] を選択した場合、組織のすべてのアカウントをアグリゲータアカウントに追加することができます。
注記
管理アカウントまたは登録済みの委任された管理者にサインインしていて、組織のすべての機能が有効になっている必要があります。発信者が管理アカウントの場合、AWS Config が
EnableAwsServiceAccessAPI を呼び出して、AWS Config および AWS Organizations 間の統合を有効にします。発信者が登録済みの委任された管理者の場合、AWS Config がListDelegatedAdministratorsAPI を呼び出して、発信者が有効な委任された管理者であるかどうかを確認します。委任された管理者がアグリゲータを作成する前に、管理アカウントに AWS Config サービスプリンシパル名 (config.amazonaws.com) の委任された管理者が登録されていることを確認します。委任された管理者を登録するには、「AWS Config の委任管理者の登録」を参照してください。
組織の読み取り専用 API のコールを AWS Config に許可するには、IAM ロールを割り当てる必要があります。
-
[アカウントからロールを選択] をクリックして、既存の IAM ロールを選択します。
注記
IAM コンソールで、
AWSConfigRoleForOrganizations管理ポリシーを IAM ロールにアタッチします。このポリシーをアタッチすると、AWS Config AWS Organizations、DescribeOrganization、ListAWSServiceAccessForOrganizationAPI の呼び出しをListAccountsに許可します。デフォルトでは、config.amazonaws.comが信頼されたエンティティとして自動的に指定されます。 -
または、[ロールを作成する] を選択して、IAM ロール名の名前を入力し、IAM ロールを作成します。
-
-
-
[リージョン] で、データを集約するリージョンを選択します。
-
1 つのリージョン、複数のリージョン、またはすべての AWS リージョン リージョンを選択します。
-
[将来の AWS リージョン を含める] をクリックすると、複数アカウントのマルチリージョンのデータ集約が有効になっている将来のすべての AWS リージョン リージョンからデータが集約されます。
-
-
[保存] を選択すると、AWS Config にアグリゲータが表示されます。
- Creating Aggregators using Individual Accounts (AWS CLI)
-
-
コマンドプロンプトまたはターミナルウィンドウを開きます。
-
次のコマンドを入力して、
MyAggregatorという名前のアグリゲータを作成します。aws configservice put-configuration-aggregator --configuration-aggregator-name MyAggregator --account-aggregation-sources "[{\"AccountIds\": [\"AccountID1\",\"AccountID2\",\"AccountID3\"],\"AllAwsRegions\": true}]"account-aggregation-sourcesについては、次のいずれかを入力します。-
データを集約する AWS アカウント ID のカンマ区切りリスト。アカウント ID を角括弧で囲み、必ず疑問符をエスケープします (例:
"[{\"AccountIds\": [\")。AccountID1\",\"AccountID2\",\"AccountID3\"],\"AllAwsRegions\": true}]" -
カンマ区切りの AWS アカウント ID の JSON ファイルをアップロードすることもできます。次の構文を使用して、ファイルをアップロードします。
--account-aggregation-sourcesMyFilePath/MyFile.jsonJSON ファイルの形式は、次のようになります。
[ { "AccountIds": [ "AccountID1", "AccountID2", "AccountID3" ], "AllAwsRegions": true } ] -
-
Enter キーを選択して、コマンドを実行します。
次のような出力が表示されます:
{ "ConfigurationAggregator": { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "MyAggregator", "AccountAggregationSources": [ { "AllAwsRegions": true, "AccountIds": [ "AccountID1", "AccountID2", "AccountID3" ] } ], "LastUpdatedTime": 1517942461.442 } }
-
- Creating Aggregators using AWS Organizations (AWS CLI)
-
この手順を開始する前に、管理アカウントまたは登録済みの委任された管理者にサインインしていて、すべての機能が組織で有効になっている必要があります。
注記
委任された管理者がアグリゲータを作成する前に、管理アカウントで AWS Config サービスプリンシパル名 (
config.amazonaws.comおよびconfig-multiaccountsetup.amazonaws.comの両方) に、委任された管理者が登録されていることを確認します。委任された管理者を登録するには、AWS Config の委任管理者の登録 を参照してください。-
コマンドプロンプトまたはターミナルウィンドウを開きます。
-
AWS Config アグリゲータ用の IAM ロールを作成していない場合は、次のコマンドを入力します。
aws iam create-role --role-nameOrgConfigRole--assume-role-policy-document "{\"Version\":\"2012-10-17\", \"Statement\":[{\"Sid\":\"\",\"Effect\":\"Allow\",\"Principal\":{\"Service\":\"config.amazonaws.com\"},\"Action\":\"sts:AssumeRole\"}]}" --description "Role for organizational AWS Config aggregator"注記
AWS Config アグリゲータを作成するときに使用する Amazon リソースネーム (ARN) を、この IAM ロールからコピーします。ARN はレスポンスオブジェクト内にあります。
-
IAM ロールにポリシーをアタッチしていない場合は、AWSConfigRoleForOrganizations マネージドポリシーをアタッチするか、次のコマンドを入力します。
aws iam create-policy --policy-name OrgConfigPolicy --policy-document '{"Version":"2012-10-17", "Statement":[{"Effect":"Allow","Action":["organizations:ListAccounts","organizations:DescribeOrganization","organizations:ListAWSServiceAccessForOrganization","organizations:ListDelegatedAdministrators"],"Resource":"*"}]}' -
次のコマンドを入力して、
MyAggregatorという名前のアグリゲータを作成します。aws configservice put-configuration-aggregator --configuration-aggregator-name MyAggregator --organization-aggregation-source "{\"RoleArn\": \"Complete-Arn\",\"AllAwsRegions\": true}" -
Enter キーを選択して、コマンドを実行します。
次のような出力が表示されます:
{ "ConfigurationAggregator": { "ConfigurationAggregatorArn": "arn:aws:config:Region:AccountID:config-aggregator/config-aggregator-floqpus3", "CreationTime": 1517942461.442, "ConfigurationAggregatorName": "MyAggregator", "OrganizationAggregationSource": { "AllAwsRegions": true, "RoleArn": "arn:aws:iam::account-of-role-to-assume:role/name-of-role" }, "LastUpdatedTime": 1517942461.442 } }
-