🗼

AWS Control Tower 概要まとめ

2024/08/31に公開

この記事は主にこちらの資料をもとにまとめたものです。
AWS BlackBelt Online Seminar | AWS Control Tower 基礎編

AWS Control Towerとは(概要)

何のためのサービス?

マルチアカウント環境の迅速なセットアップを自動化するマネージドサービス

何ができる?

  • 適切に設計されたマルチアカウント環境のセットアップ
    「適切に設計された」=「Well-Architected」
    AWSのベストプラクティスに従って環境をセットアップ・管理する。
  • ガバナンスが適用されたAWSアカウント作成を自動化
    Account Factoryで設定可能なテンプレートを用いてアカウントを迅速にプロビジョニングできる。
  • 事前構成されたコントロール
    AWSにより事前構成されたコントロール(セキュリティの文脈でいう「ガードレール」にあたり、AWS環境内においてそう呼ばれることもある)によってベストプラクティス・標準・規制要件を適用する。

つまり

AWSセキュリティサービス群にベストプラクティスに則った設定を投入、統制を利かせたマルチアカウント環境(Landing Zone)を構成・運用するサービス
→ だからコンフィグジェネレータと言える

料金

Control Tower自体に追加料金はかからない。
ただしランディングゾーン、必須コントロール設定のために構成したAWSサービスのコストが発生するため、各構成を踏まえてコストを検討する必要がある。
例:AWS Service Catalog, CloudTrail, Config, CW, SNS, S3, VPC, etc

AWS Control Towerにおける基本概念

ガードレール

セキュリティ要件を事前に制御・適用させ、あるべき状態からの逸脱を監視・発見する仕組みを敷くというセキュリティ上の考え方。
対義語は「ゲートキーパー」でこちらはオペレーションを都度停止させてセキュリティを設計・評価・運用する仕組み。
「ガードレール」はオペレーションが止まることなく、使うものをセキュアに利用できる。

【種類】

  • 予防的ガードレール
  • 発見的ガードレール

Control Towerにおいては「コントロール」がこれにあたる。→コントロール適用

ランディングゾーン

セキュリティとコンプライアンスのベストプラクティスに基づく、優れたアーキテクチャ設計の複数アカウントの環境です。
https://docs.aws.amazon.com/ja_jp/controltower/latest/userguide/what-is-control-tower.html

スケーラブルで安全なマルチアカウント環境のこと。

ダッシュボード

Control Towerはダッシュボードによってランディングゾーンを監視できる。
組織全体のアカウント、ポリシー、コントロールなどの状態を確認できる。

[前提]なぜ、マルチアカウント?

「リソース」「セキュリティ」「請求」を最高レベルで分離できるのが「アカウント」

  • リソース
    サービスクォータ
  • セキュリティ
    リスクやニーズはアカウントに封じ込める
  • 請求
    AWSにおいて請求はアカウントレベルが唯一

では、なぜランディングゾーン?

特に大規模な組織や、多数のワークロードやチーム、高いコンプライアンス要件がある場合にこれらが適切に管理される必要がある。

  • セキュリティ統制の管理・適用
  • ログの一元管理
  • インシデント発生時の証跡

Control Towerで実現できること

ログ集約

一言管理するためのS3バケットがログアーカイブアカウントに作成される。
ControlTowerでAWSアカウントを作成した時点からログ収集を開始できる

コントロール適用

「ガードレール」という考え方に基づく。
Control Towerにおいては、400を超えるプリセットから要件に合わせて選択可能。

【動作の種類】

  • 予防コントロール
    • 対象の捜査を実施させない。
    • SCPで実装
  • 検出コントロール
    • 望ましくない操作の発見
    • Config Rulesで実装 + Security Hubと連携
  • プロアクティブコントロール
    • ルールに沿ったリソースのみ作成可能
    • CloudFormation Hooksで実装

【ガイダンスの種類】

  • 必須
  • 強く推奨
  • 選択的

必須コントロールはセットアップ時に必ず適用される。

[必須の予防コントロールの例]

  • Control Towerで作成、設定したリソースへの変更や削除をSCPで禁止する
    必須コントロールはControl Towerが正しく動作するための設定

通知

リスクある操作に気づく。=「発見的統制」のため。
Configで把握した変更情報やConfig rulesの準拠状況をSNSで通知する機構

ID一元管理

AWS IAM Identitry Centerによりログインの導線、ユーザー管理を一本化

AWSアカウント作成とプロビジョニング

Control Towerの機能であるAccount Factoryで各種設定がなされたアカウントをプロビジョニングする。
ログの集約やコントロール適用がはじめから設定された状態でアカウントを作成できる。

[所感]Control Towerのニーズ

少数のアカウントをホストしている場合は、アカウントデプロイとアカウントガバナンスを容易にするオーケストレーションレイヤーを持つことは有益です。AWS Control Tower は、アカウントとインフラストラクチャをプロビジョニングする主な方法として採用できます。AWS Control Tower を使用すると、より簡単に企業基準を遵守し、規制要件を満たし、ベストプラクティスに従うことができます。
https://docs.aws.amazon.com/ja_jp/controltower/latest/userguide/what-is-control-tower.html

ControlTower、ランディングゾーンは大規模な組織へのニーズというイメージがあり、また一定のコストもかかるものなので、なかなか導入に一歩踏み出しづらい印象がありました。
しかしその中身はAWS・セキュリティのベストプラクティスを適用するためのものであり、全くやらない・見ない・触れない、ではなく、その考え方という最小単位からでもできることから導入していけたらと考えました。

参考資料まとめ

ユーザーガイド

https://docs.aws.amazon.com/ja_jp/controltower/latest/userguide/what-is-control-tower.html

ベストプラクティス

https://aws.amazon.com/jp/blogs/news/best-practices-for-applying-controls-with-aws-control-tower/

Workshop

https://catalog.workshops.aws/control-tower/ja-JP

GitHubで編集を提案
Fusic 技術ブログ

Discussion