AWS Control Tower 徹底調査

Masashi Suzuki

2023.8.10

AWS Control Tower とは

AWS Control Tower とは Landing Zone を実装するための AWS のマネージドサービスです。統制を取りつつマルチアカウントを管理する仕組みです。

Landing Zone とは

Landing Zone とはセキュリティとコンプライアンスのベストプラクティスに基づきアーキテクチャ設計と複数のアカウント環境を管理する仕組みを指します。

Landing Zone は、下記機能から構成されます。

  1. アカウントの発行・必要な初期設定の済んだアカウントを作成
  2. 管理用権限の発行・対象アカウントを管理するための権限を作成
  3. 共有サービスへのアクセス (ユーザー環境に合わせて個別に実装する)・AD やファイルサーバー等の共有サービスや運用拠点への接続経路の確保
  4. AWS ログの集約・監査用ログをセキュアに一元保存
  5. ガードレールの設置・実施してはいけない操作の禁止・危険な設定の監視

Landing Zone の実装方法

Langing Zone を実装する方法は以下の2つの方法が考えられます。

AWS Control Tower

AWS サービスとして提供される Landing Zone です。容易に利用可能ですが、カスタマイズするには制限があります。
主にこれから AWS を利用する場合に利用できます。既存アカウントにも適用可能です。

独自実装の Landing Zone

自組織で独自実装するパターンです。自組織の方針に従って自由にカスタマイズできるのが強みです。ただし、自由にカスタマイズがゆえにメンテナンスコストがかかります。

主に既存アカウントに適用する場合に利用できます。自組織でアカウント発行の仕組みや管理の仕組みができあがってる場合などに向いています。

そもそもなんでマルチアカウントにするのか

AWS をマルチアカウントにする観点として以下のものが考えられます。

  • 環境の分離
    • 開発、テスト、本番を分離することによるセキュリティおよび統制の確保
  • 請求の分離
    • 部門やシステム単位でのコスト明確化
  • 権限の分離
    • 部門間での権限分離およびアカウントへの権限移譲
  • 複雑性の分離
    • アカウントの目的を明確に絞ることで、構成がシンプルになる

AWS Organizations だけでもできること

マルチアカウント管理するだけなら AWS Organizations のみでも可能です。AWS Control Tower はAWS Organizations の機能を利用して、マルチアカウント管理機能を拡張しています。

AWS Organizations の機能は以下のとおりです。

  • 複数 AWS アカウントの一元管理
  • Organization Unit (OU)の作成
    • 複数アカウントのグルーピング化
  • AWS アカウントの発行
  • Service Control Policy の作成、OU への適用
  • 複数アカウントの一括請求

AWS Control Tower だと何ができるのか

AWS Control Tower の機能は以下のとおりです。

  • Landing Zone の提供
    • AWS Organizations を使用してマルチアカウントを作成
      • ベストプラクティスに基づいたマルチアカウント構成
      • デフォルトで Sandbox、Security の OU を作成
    • AWS IAM アイデンティティセンターを利用した ID 管理を提供
  • Account Factory
    • AWS アカウントのプロビジョニングの自動化
    • 設定可能なテンプレートを提供
  • CloudTrail と Config ログの保存
    • Log Archive アカウント内の S3 バケットに一元的に保存される
  • コントロールの提供
    • AWS 環境全体に継続的なガバナンスを提供する高レベルのルール
    • かつてはガードレールと呼ばれていたもの
    • 予防と発見とプロアクティブの 3種類があり、この3種類のコントロールには、必須、強く推奨、選択的の 3 つのガイダンスカテゴリが適用される
      参考: AWS Control Tower のコントロールについて – AWS Control Tower
    • 予防コントロール(Service Control Policy)
      • 禁止されたアクションの実行が拒否される仕組み
      • Control Tower 管理下のアカウントは必須の予防コントロールで禁止されているアクションが不可能
    • 発見コントロール(AWS Config)
      • ポリシー違反などリソース設定の非準拠を検出する仕組み
    • プロアクティブ(CloudFormation フック)
      • CloudFormation でプロビジョニングされる前にリソースをスキャンして、非準拠なリソースのプロビジョニングを拒否する仕組み
  • ダッシュボード
    • OU やアカウント、ガードレール違反などが一覧表示できる

AWS Control Tower ではできないこと

AWS Control Tower では提供されてない機能もあります。GuardDuty や Security Hub などのセキュリティ機能を組織全体適用するには Organizations の機能を利用する必要があります。

AWS Control Tower の注意点、制約事項

いろいろ資料を見てみてこの辺注意が必要かなという点を書いていきます。

注意点

制限とクォータ

AWS Control Towerを使うべきなのか

マルチアカウントを展開していくのであれば、AWSのベストプラクティスに乗れるので、使用するのが無難です。
ただし、独自の Landing Zone をすでに構築しており、Account Factory の仕組みも独自で構築できているのであれば、移行コストを鑑みてそのままでも問題ないです。
必須の予防コントロールが許容できない、OU などの制限にひっかかるなどの運用上の制約がある場合は使えないので、組織のポリシーを見直すか、独自で Landing Zone を作るかを考える必要があります。

まとめ

Control Tower について調べたことを書いていきました。
社内でも導入事例や運用事例がちらほら出始めてきたので、知見が溜まってきたらまたそれも共有できたらと思います。

参考文献

ブログ一覧へ戻る

お気軽にお問い合わせください

SREの設計・技術支援から、
SRE運用内で使用する
ツールの導入など、
SRE全般についてご支援しています。

資料請求・お問い合わせ