-
タグ
タグ
- セキュリティ
- 人材開発・教育
- システム開発
- アプリ開発
- モバイルアプリ
- DX
- AI
- サイバー攻撃
- サイバー犯罪
- 標的型攻撃
- 脆弱性
- 働き方改革
- 企業市民活動
- 攻撃者グループ
- JSOC
- JSOC INSIGHT
- サイバー救急センター
- サイバー救急センターレポート
- LAC Security Insight
- セキュリティ診断レポート
- サイバー・グリッド・ジャパン
- CYBER GRID JOURNAL
- CYBER GRID VIEW
- ラックセキュリティアカデミー
- すごうで
- ランサムウェア
- ゼロトラスト
- ASM
- EDR
- SASE
- デジタルアイデンティティ
- インシデントレスポンス
- 情シス向け
- 対談
- CIS Controls
- Tech Crawling
- クラウド
- クラウドインテグレーション
- データベース
- アジャイル開発
- DevSecOps
- OWASP
- CTF
- FalconNest
- セキュリティ診断
- IoT
- EC
- サプライチェーンリスク
- スレットインテリジェンス
- テレワーク
- リモートデスクトップ
- アーキテクト
- プラス・セキュリティ人材
- 障がい者採用
- 官民学・業界連携
- カスタマーストーリー
- 白浜シンポジウム
- CODE BLUE
- 情報モラル
- クラブ活動
- 初心者向け
- 趣味
- カルチャー
- 子育て、生活
- 広報・マーケティング
- コーポレート
- ライター紹介
- IR
はじめまして。クラウドインテグレーションサービス部の中尾です。
「クラウド」という名のつく通り、AWSやOCI、Azure、Google Cloud(旧GCP)などクラウド案件を幅広く扱っている部門に所属しており、私自身はAWSの案件に携わって2か月ほどになります。
突然ですが、AWS環境でのマルチアカウント構成を利用していますか?
マルチアカウントとは、一つのサービスを複数のアカウントで使い分けて利用することを指します。AWSでは、複数のAWSアカウントでシステムを構成する方法をベストプラクティスとして推奨していますが、セキュリティに強みを持つラックとしても、セキュリティやガバナンスの強化のため、マルチアカウント構成を推奨しています。
しかし、アカウントが増えれば管理が煩雑になるのではないか、アカウントごとに設定にばらつきが出てしまうのではないか、といった不安の声も聞こえてきます。そこでご紹介したいのが、「AWS Control Tower」です。
今回は、AWS歴が浅い私でも短時間で複数のAWSアカウントをセットアップできた「AWS Control Tower」というサービスについて、社内のAWS検証環境で構築した際に感じたメリットとデメリットをご紹介します。
AWS Control Towerとは
AWS Control Towerとは、マルチアカウントを設定、管理できるマネージドサービスです。これを利用すると、セキュリティのベストプラクティスに則った環境を自動でセットアップできます。
AWS Control Towerの機能
AWS Control Towerには大きく4つの機能があります。
1. シングルサインオン
ログイン・ユーザー管理を一本化するSSO(シングルサインオン)を自動で有効化、セットアップしてくれます。アカウントごとにユーザーID・パスワードを管理し、ログイン処理を実施する手間を取り除けます。
2. ログ集約
CloudTrailを自動で有効化、セットアップしてくれます。アカウントごとにログ設定を入れる必要がなくなる、複数アカウントのログを一か所で管理し調査等が簡単になる、オペレーションミスや故意に操作ログを失うことがなくなるメリットがあります。
3. ガードレール
AWS ConfigやAWS Organizationを自動で有効化、セットアップしてくれます。ガードレールはAWS環境全体に継続的なガバナンスを提供する高レベルのルールであり、「コントロール」と呼ばれます。
この機能によって、セキュリティ担当者のリスト作成、更新、確認の負担、セキュリティのチェックリストの入力や確認の負担を減らしつつ、セキュリティの向上を実現します。セキュリティ上問題のある操作をしないよう禁止する「予防的ガードレール」と、リスクのある構成などを検知・通知する「発見的ガードレール」の2種類を組み合わせてセキュリティ統制を行います。
4. アカウント作成
AWS Service CatalogやAWS CloudFormationによってアカウント作成を自動でセットアップしてくれます。このAccount Factoryと呼ばれる機能によって、先述のSSO、ログ集約、コントロールの設定が施されている、統制の効いた環境を作成できます。
AWS Control Towerのアカウント区分
AWS Control Towerでは、大きく4種類のアカウントが登場します。
アカウント | 概要 |
---|---|
AWS Control Tower管理アカウント | AWS Control Towerの設定を行うアカウント。コントロールの有効化、権限管理を実施。 |
監査アカウント | セキュリティやコンプライアンスのチームが利用するアカウント。各アカウントの変更を監視し、通知を送信。 |
ログアーカイブアカウント | ログを安全に保存するためのアカウント。AWS CloudTrailとAWS Configのログを一元管理されたAmazon S3バケットに保存。 |
メンバーアカウント | AWS Control Towerに登録されたアカウント。AWS Control Towerで有効化したコントロールが設定される。 |
AWS Control Towerを使ってみた
AWS Control Towerのセットアップ方法は、ランディングゾーンを含んだ新しい組織を作成する方法と、既存の組織にAWS Control Towerランディングゾーンを追加する方法の2種類があります。
今回はランディングゾーンを含んだ組織を新規に作成する方法を検証していきます。
AWS Control Towerで環境を構築する
AWSマネジメントコンソールにサインインし、AWS Control Towerのサービス画面を開きます。右上の「ランディングゾーンの設定」をクリックします。
ステップ1 料金の確認とリージョンの選択
まずは、ホームリージョンや追加リージョンの設定をします。
今回の検証では、ホームリージョンを「アジアパシフィック(東京)」、リージョン拒否設定を「有効になっていません」に設定し、「次へ」をクリックします。ホームリージョンは設定後に変更ができないので注意が必要です。
ステップ2 組織単位(OU)の設定
OUの設定を行います。必須の「基礎となるOU」と、任意で追加できる「追加のOU」をここで作成します。
デフォルト名はそれぞれ「Security」「Sandbox」となっています。OU名も設定後に変更ができないため注意してください。
ステップ3 共有アカウントの設定
ログアーカイブアカウント、監査アカウント、暗号化の設定を行います。
「新規アカウントの作成」を選択し、メールアドレスとアカウント名を入力して「次へ」をクリックします。各アカウント名もホームリージョン、OU名と同様に、設定後に変更ができません。
ステップ4 その他の設定
SSO(シングルサインオン)を実装する場合、「AWS Control TowerはIAM Identity Centerを使用してAWSアカウントアクセスを設定します。」を選択します。CloudTrailでログを収集したい場合、AWS CloudTrailの設定を「有効」にします。
さらに、Amazon S3のログ設定で、ログの保持期間を設定します。
暗号キーを作成してAWS Control Towerでリソースをコントロールしたい場合、「KMSキーを作成する」をクリックして、KMSキーを新規に作成します。キーのタイプは「対称」、キーの使用方法は「暗号化および復号化」、詳細オプションは「KMS - 推奨」、リージョンごとは「単一リージョンキー」を設定し、「次へ」をクリックします。
エイリアスに任意の名前を設定し、「次へ」をクリックします。
キーを管理できるIAMユーザーを選択し、「次へ」をクリックします。今回の検証ではAWS ConfigとCloudTrailにだけ使いたいため、キーユーザーは指定せずに「次へ」をクリックします。
設定値を確認して「完了」をクリックします。
作成したキーのポリシーを編集します。
AWS Control Towerの設定画面で作成したKMSキーを選択し、「次へ」をクリックします。
ステップ5 ランディングゾーンの確認とセットアップ
これまでに設定してきた内容を確認し、ページ下部のチェックボックスにチェックを入れて「ランディングゾーンの設定」をクリックします。
「ランディングゾーンの設定が完了しました。」と表示が出たら設定完了です。
今回の検証では20分ほどでセットアップが完了しました。
AWS Control Towerのプロビジョニングが完了すると登録したメールアドレスに確認メールが来るので、リンクをクリックします。
「Subscription confirmed!」と表示された画面に遷移すると認証完了です。
検証してみて気付いたAWS Control Towerのメリット・デメリット
メリット
簡単にセットアップできる
マネジメントコンソールの画面に沿ってボタンをクリックするだけで、複数のアカウントを作成し複数のサービスをセットアップができました。AWSの理解度に依存せずに、AWSのベストプラクティスに沿った形で複数のAWSアカウントを構築・管理できることは大きなメリットだと感じました。
AWSアカウントの切り替えが楽になる
正確にはIAM Identity Centerの機能にはなりますが、アカウントを切り替えるときに毎回ユーザーIDやパスワードを入力する、Authenticatorアプリを起動して認証する手間が省けるので、作業効率の向上にも繋がりました。AWS Control Towerを活用すれば、簡単にこの機能を実装できます。
複数のAWSアカウントに対して統制を効かせられる
AWS Control Towerには予防、検出、プロアクティブといった非常に多くの種類のセキュリティのコントロールが用意されています。このコントロールを用いることで、セキュリティリスクのある操作をブロック、またリスクへの早期対処が実現できます。
デフォルトで有効になっているのはガイダンスが「必須」になっているコントロールのみとなっていますが、「強く推奨」「選択的」といったガイダンスのコントロールを、自身の環境に合わせて機能させられます。コントロールを活用すると、複数のAWSアカウントに対して統制を効かせられるため、アカウントごとの設定にばらつきが出なくなりました。
デメリット
リソースのカスタマイズができない
AWS Control Towerで作成されたリソースは変更・削除しないことが推奨されており、SCPで制御されているため、カスタマイズができません。
例えばAWS Control Towerが作成したEventBridgeのルールだと、Configルールを新たに追加したり、Configルールのコンプライアンスステータスが変わったりしたタイミングで監査アカウント宛てに通知メールが送信されます。大量のメールが届くことになりますが、EventBridgeのルールを編集できないようにSCPで制御されているため、通知の抑制ができません。
複数のAWSサービスを使用するため、理解に時間を要する
AWS Control Towerのメリットは簡単にセットアップできると先述しましたが、たった数クリックで複数のサービスができあがるので、各AWSアカウントにどのようなリソースが、どのような意図で作成されるのかを理解したり、それぞれのリソースにどのような関係性があるのかを把握したりすることが大変でした。
また、作成されたリソースを確認してみると、AWSユーザーガイドに記載の「作成されるリソース」と一部異なることがわかりました。以下に示しますが、実際に利用する際には確認が必要です。
アカウント | ユーザーガイドにあるが作成されないリソース | ユーザーガイドにないが作成されたリソース |
---|---|---|
管理アカウント | ◆CloudFormationのStackSets ・AWSControlTowerExecutionRole |
◆CloudFormationのStackSets ・AWSControlTowerGuardrailAWS-GR-DETECT-CLOUDTRAIL-ENABLED-ON-SHARED-ACCOUNTS ・AWSControlTowerBP-VPC-ACCOUNT-FACTORY-V1 |
監査アカウント | ◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- ◆Amazon Cloud WatchのCloudWatchLogs ・aws-controltower/CloudTrailLogs ◆IAMのロール ・aws-controltower-CloudWatchLogsRole |
◆CloudFormationのStackSets ・StackSet-AWSControlTowerGuardrailAWS-GR-DETECT-CLOUDTRAIL-ENABLED-ON-SHARED-ACCOUNTS- ◆Amazon Cloud Watchのイベントルール ・AWSControlTowerManagedRule |
ログアーカイブアカウント | ◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- ◆Amazon Cloud WatchのCloudWatchLogs ・aws-controltower/CloudTrailLogs ◆IAMのロール ・aws-controltower-CloudWatchLogsRole |
◆Amazon Cloud Watchのイベントルール ・AWSControlTowerManagedRule |
メンバーアカウント | ◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- ◆Amazon Cloud WatchのCloudWatchLogs ・aws-controltower/CloudTrailLogs ◆IAMのロール ・aws-controltower-CloudWatchLogsRole |
◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-VPC-ACCOUNT-FACTORY-V1- ◆Amazon Cloud Watchのイベントルール ・AWSControlTowerManagedRule |
管理アカウント |
---|
ユーザーガイドにあるが作成されないリソース ◆CloudFormationのStackSets ・AWSControlTowerExecutionRole |
ユーザーガイドにないが作成されたリソース ◆CloudFormationのStackSets ・AWSControlTowerGuardrailAWS-GR-DETECT-CLOUDTRAIL-ENABLED-ON-SHARED-ACCOUNTS ・AWSControlTowerBP-VPC-ACCOUNT-FACTORY-V1 |
監査アカウント |
ユーザーガイドにあるが作成されないリソース ◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- ◆Amazon Cloud WatchのCloudWatchLogs ・aws-controltower/CloudTrailLogs ◆IAMのロール ・aws-controltower-CloudWatchLogsRole |
ユーザーガイドにないが作成されたリソース ◆CloudFormationのStackSets ・StackSet-AWSControlTowerGuardrailAWS-GR-DETECT-CLOUDTRAIL-ENABLED-ON-SHARED-ACCOUNTS- ◆Amazon Cloud Watchのイベントルール ・AWSControlTowerManagedRule |
ログアーカイブアカウント |
ユーザーガイドにあるが作成されないリソース ◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- ◆Amazon Cloud WatchのCloudWatchLogs ・aws-controltower/CloudTrailLogs ◆IAMのロール ・aws-controltower-CloudWatchLogsRole |
ユーザーガイドにないが作成されたリソース ◆Amazon Cloud Watchのイベントルール ・AWSControlTowerManagedRule |
メンバーアカウント |
ユーザーガイドにあるが作成されないリソース ◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-BASELINE-CLOUDTRAIL- ◆Amazon Cloud WatchのCloudWatchLogs ・aws-controltower/CloudTrailLogs ◆IAMのロール ・aws-controltower-CloudWatchLogsRole |
ユーザーガイドにないが作成されたリソース ◆CloudFormationのStackSets ・StackSet-AWSControlTowerBP-VPC-ACCOUNT-FACTORY-V1- ◆Amazon Cloud Watchのイベントルール ・AWSControlTowerManagedRule |
さいごに
今回の記事ではAWS Control Towerを利用する手順と、メリット・デメリットをご紹介しました。複雑に見えるマルチアカウントを簡単にセットアップできるAWS Control Towerの魅力を感じていただけたでしょうか。
私自身、これまではオンプレミスの構築案件に携わる機会が多かったため、短時間で難なくこれだけの環境を整えられる手軽さにはあっけなさすら感じました。
気付いたらアカウントがどんどん増えて管理が大変だと感じている方、セキュリティやガバナンスを強化したいけれど何から始めればいいか分からず着手できていない方、何となくマルチアカウントは難しそうだなと後回しにしている方、一度AWS Control Towerを試してみてはいかがでしょうか。
また、ラックではお客様の漠然としたお悩みや課題にも一緒に向き合い、適切なサービスを提案いたしますので、ぜひお気軽にお問い合わせください。
タグ
- セキュリティ
- 人材開発・教育
- システム開発
- アプリ開発
- モバイルアプリ
- DX
- AI
- サイバー攻撃
- サイバー犯罪
- 標的型攻撃
- 脆弱性
- 働き方改革
- 企業市民活動
- 攻撃者グループ
- JSOC
- もっと見る +
- JSOC INSIGHT
- サイバー救急センター
- サイバー救急センターレポート
- LAC Security Insight
- セキュリティ診断レポート
- サイバー・グリッド・ジャパン
- CYBER GRID JOURNAL
- CYBER GRID VIEW
- ラックセキュリティアカデミー
- すごうで
- ランサムウェア
- ゼロトラスト
- ASM
- EDR
- SASE
- デジタルアイデンティティ
- インシデントレスポンス
- 情シス向け
- 対談
- CIS Controls
- Tech Crawling
- クラウド
- クラウドインテグレーション
- データベース
- アジャイル開発
- DevSecOps
- OWASP
- CTF
- FalconNest
- セキュリティ診断
- IoT
- EC
- サプライチェーンリスク
- スレットインテリジェンス
- テレワーク
- リモートデスクトップ
- アーキテクト
- プラス・セキュリティ人材
- 障がい者採用
- 官民学・業界連携
- カスタマーストーリー
- 白浜シンポジウム
- CODE BLUE
- 情報モラル
- クラブ活動
- 初心者向け
- 趣味
- カルチャー
- 子育て、生活
- 広報・マーケティング
- コーポレート
- ライター紹介
- IR