[アップデート] 委任したメンバーアカウントで AWS Config アグリゲーターを使った Organizations 組織レベルのデータ収集が可能になりました
はじめに
特定のメンバーアカウントを Organizations 組織の「委任管理者」に 指定することで、 メンバーアカウントから 組織レベルでデータ収集を行う Config アグリゲーターを作成 できるようになりました。
なにが嬉しいのか?
AWS Config を活用した組織全体の「リソースの把握」や「Configルールのコンプライアンスルール状況の把握」をメンバーアカウントで行えるようになります。
「最小限の特権の原則」のセキュリティベストプラクティスに基づいて、メンバーアカウントに委任できます。
ちなみに、Configルール/適合パックの展開・管理はメンバーアカウントに委任できていました。 (詳細は以下参照)
本アップデートでめでたく Configの主要機能すべてを委任したメンバーアカウントで行える ようになりました。
もう少し詳しく
AWS Config アグリゲーターを使って 複数アカウント・複数リージョンのAWS Config データを 1画面に集約することができます。
– 画像: Multi-Account Multi-Region Data Aggregation | AWS
この アグリゲーターは Organizations連携しています。 Organizations マネジメントアカウントで ソースアカウントを「組織」としたアグリゲータ を作成することで、簡単に組織内全アカウントの Configデータを集約できます。
今回のアップデートで、この「組織アグリゲータ」を委任したメンバーアカウントで作れるようになりました。
実際にやってみる
以下ステップで Configアグリゲータを作ってみます。
- 前提
- Organizationsの「信頼されたアクセス」を編集する
- 委任管理者の設定
- アグリゲータの作成
前提
- Config記録は全リージョン・全アカウントで有効になっていること
- 私が実施したときの AWS CLIバージョンは
2.1.6
Organizationsの「信頼されたアクセス」を編集する
"マネジメントアカウント環境" での作業です。 AWS Config のアクセス有効化としていない場合は、有効化しましょう。
AWS CLIで実施する場合は以下コマンド実施します。
aws organizations enable-aws-service-access --service-principal config.amazonaws.com aws organizations enable-aws-service-access --service-principal config-multiaccountsetup.amazonaws.com
(補足) "config.amazonaws.com" 部分 は AWS Config、 "config-multiaccountsetup.amazonaws.com" 部分 は AWS Config rules のための設定です。
▼ 確認コマンド
$ aws organizations list-aws-service-access-for-organization --output text | grep config ENABLEDSERVICEPRINCIPALS 2020-06-04T11:53:02.081000+09:00 config-multiaccountsetup.amazonaws.com ENABLEDSERVICEPRINCIPALS 2020-04-13T11:12:48.212000+09:00 config.amazonaws.com
委任管理者の設定
"マネジメントアカウント環境" での作業です。 以下のようなコマンドを実行します。
aws organizations register-delegated-administrator --account-id ${委任管理者アカウントID} --service-principal config.amazonaws.com aws organizations register-delegated-administrator --account-id ${委任管理者アカウントID} --service-principal config-multiaccountsetup.amazonaws.com
${委任管理者アカウントID}
部分に委任管理者とするメンバーアカウントのアカウントIDを入力してください。
▼ 確認コマンド
$ aws organizations list-delegated-services-for-account --account-id ${委任管理者アカウントID} --output text | grep config DELEGATEDSERVICES 2020-06-04T12:03:29.249000+09:00 config-multiaccountsetup.amazonaws.com DELEGATEDSERVICES 2020-12-02T17:32:03.368000+09:00 config.amazonaws.com
アグリゲータの作成
委任されたメンバーアカウント環境 での作業です。
AWS Config > アグリゲータ > アグリゲータの追加
からアグリゲータ作成画面へ行きます。
▼ 「データレプリケーションの許可」にチェック、アグリゲータ名を入力します。
▼ ソースアカウントの選択では「組織を追加する」にチェックを入れます。IAMロールは新規作成で進めました
▼ 対象リージョンは全リージョン、および将来のAWSリージョンとします
以上、「保存」を選択すればアグリゲータが作成されます。
確認
アグリゲーター作成後、しばらくデータ収集・表示まで時間がかかります。待ちましょう。
しばらく待つと、以下のような集約ビューを確認できました。
委任されたメンバーアカウントから、 組織内の リソース構成情報や Configルールのコンプライアンス状況を把握することができます。
おわりに
Config アグリゲータを 委任されたメンバーアカウント上で作成してみました。
AWS Configは、 今まで Configルール/適合パックの展開・管理だけ委任管理者設定ができていましたが、 今回晴れてアグリゲータ作成もできるようになりました。
マルチアカウントのリソース把握・セキュリティ統制に活用したいところです。
少しでもどなたかのお役に立てば幸いです。