AWS Control Tower の仕組みとコントロールの実装方法
AWS Control Towerは、複数のAWSアカウントを一元管理し、共通のルールでセキュリティを設定・監視するサービスです。企業のマルチアカウント環境の管理を効率的行い、ガバナンス統制を実現することができます。今回は、AWS Control Towerで使用される、組織単位(OU)、アカウント、コントロールについてそれぞれご紹介します。
目次[非表示]
複数アカウントを一括管理できるAWS Control Tower
AWSを安全に使うためにはルールが必要です。例えば、ユーザ権限の管理、ストレージは暗号化すること、rootユーザの操作を禁止、rootユーザのアクセスキー作成禁止、S3のパブリック公開は禁止、使用するリージョンの制限を行う、などです。
ルール違反に気づいて修正したり、ルール違反を防止するには、管理者による厳格な運用管理が必須となりますが、管理者による運用の手が届くのは単一のアカウント、もしくは複数であっても少数に限られたアカウントが限界です。AWS Control Towerは、多数のアカウントに対して共通のルールを適用し、ルール違反を予防、発見することができるサービスです。
煩雑なマルチアカウントのセキュリティ管理
AWSを単一アカウントで利用する場合、管理者はアカウント内の設定を直接確認し、コンプライアンス違反のチェックも行いやすいものです。しかし、企業規模などのAWS利用においては、マルチアカウントで運用することをベストプラクティスとしています。これは、権限を分けたり、設定の影響範囲を狭めるためです。
事業部や開発プロジェクトごとに複数のアカウントが運用されると、管理は煩雑になり、すべてのアカウントでルール違反がないかを手作業で見ていくことは、コスト面でも人的リソースの面でも大きな負担となり、担当者は疲弊してしまうでしょう。
このような課題を解決するサービスが、AWS Control Towerです。AWS Control Towerは、複数のAWSアカウント環境におけるセキュリティとコンプライアンスの管理を一元化し、効率的に運用するためのサービスです。
マルチアカウントに関する説明は、こちらの記事をご覧ください。
「ランディングゾーン」で管理の基盤を構築
AWS Control Towerを利用すると、「ランディングゾーン」という環境が自動で構築されます。ランディングゾーン内にアカウントを立ち上げると、設定済みのセキュリティルールが適用された状態で、アカウントが構成されます。
組織単位 (OU)
ランディングゾーンには、以下のような基本的な組織単位(OU)が用意されており、それぞれに異なる管理機能が配置されています:
-
Root OU
Control Towerの全体管理を行うための「管理アカウント」が配置される組織単位
-
Security OU
セキュリティの管理に特化し、監査やログの収集を行う「監査アカウント」や「ログアーカイブアカウント」が含まれる
-
Sandbox OU
ワークロードを実行するためのアカウントが配備され、ユーザーごとのアカウントの利用範囲が制御される
アカウント
-
管理アカウント
AWS Control Towerのランニングゾーンを管理する。コントロールの定義内容や、コントロールをどのアカウントに適用するかを操作する
(管理アカウントは、必須の予防コントロールは適用されない)
-
監査アカウント
統制下の全てのアカウント内のAWS リソースのルールに対しての準拠・非準拠状況の集約及び検知先
-
ログアーカイブアカウント
統制下のすべてのアカウントのすべてのログの集約をしていくアカウント
コントロール
コントロールは、AWS Control Towerが適用するルールで、それらが各メンバーアカウントや、監査アカウント、ログアーカイブアカウントなど、AWS Control Towerの統制管理下にあるアカウントに適用されます。
-
予防コントロール
特定の操作を制限することで、ルール違反を未然に防止する
(例) S3バケットのパブリック公開操作の制限を行う
-
検出コントロール
ソースの設定状況を監視し、望ましい状態にあるかを評価する
(例) S3バケットの暗号化状態を監視し、違反が発生した際には通知する
上記の図にある、赤色のチェックボックスは「必須の予防コントロール」、緑色のチェックボックスは「必須の検出コントロール」を示します。
IAM Identety Centerディレクトリ
IAM グループに似たもので、「IAM Identety Centerディレクトリ」があります。許可の範囲が定義されたユーザーがこの中に格納されていて、それを使用して各メンバーアカウントのワークロードを行うアカウントに入ることができます。こちらについても、後ほど詳しくご紹介します。
管理を効率化する「コントロール」の実装方法
Control Towerでは、アカウント運用におけるセキュリティルールを設定する「コントロール」と呼ばれる管理ポリシーが適用されます。Control Tower内のすべてのアカウントにおいて、これらのコントロールが適用されるため、マルチアカウント環境においても、セキュアな状態を維持することができ、ガバナンス統制を図ることができます。
コントロールの実装方法
コントロールには主に次の2種類がありますが、それぞれの実装方法は次の通りです。
コントロール種別 |
目的 |
実装方法 |
---|---|---|
予防コントロール |
操作制限 |
SCP(サービスコントロールポリシー) |
検出コントロール |
違反検知、監査 |
AWS Config Rule |
- SCP(サービスコントロールポリシー)
特定の操作を制限する、予防コントロールの実装に使用されています。組織内のアカウントや組織単位(OU)に対して、AWSサービスへのアクションを制御するためのポリシーで、JSON形式で記載します。IAMポリシー等と同じ形式です。
AWS Config Rule
違反検知や監査に使用される、検出コントロールの実装に使用されています。
AWS リソースの設定状況を監視して、それらが望ましい状態にあるかどうかを評価し、検知するサービスです。
監査アカウントを活用すれば、通知を担当者に飛ばし、セキュリティ要件に合っていないリソースや、リージョンを特定して、是正するという運用が可能になります。
これらのコントロールにより、管理者はAWS環境の可視性を高め、迅速に問題を検出・是正することができるため、アカウント運用の品質を保ちながらも管理の効率化を実現します。
IAM Identity Centerでユーザーアクセスを一元管理
AWS Control Towerでは「IAM Identity Center」を用いてユーザーアクセスを行うこともできます。IAM Identity Centerの画面上で、利用したいアカウントの部分を選択すると、そのアカウントに入ることができます。
例えば管理アカウントについては、アクセス方法が3つ表示されていますが、AWS Control Towerのランディングゾーンの設定を行いたい時には「AWSAdministratorAccess」で入って設定を実際に行う、ただ情報を取得したいだけ場合は「ViewOnlyAccess」で入って環境を見るだけにする、などといった運用が可能です。これによって強力なアカウントへの不要なアクセスを避けることができ、安心な操作ができます。
AWS Control Tower導入のメリット
AWS Control Towerは、複数のAWSアカウントを持つ企業に対し、統一された管理基盤を提供することで、運用負荷の軽減、コンプライアンスの一貫性、セキュリティ強化を実現することができます。新規アカウントを追加する際も、既定のポリシーと設定が自動で適用されるため、設定ミスによるセキュリティリスクを大幅に低減できます。また、全アカウントのログを一元管理できるため、トラブルシューティングや監査対応も容易です。
マルチアカウントの管理に課題を感じている方は、ぜひ導入を検討してみてください。
AWS Control Towerの概要は、下記の記事もぜひご覧ください。
Kyriosでは、AWS Control Towerの導入・運用支援サービスも行っております。詳しくはこちらをご覧ください。