AWS Control TowerでAWSのクロスアカウント環境構築!AWSの推奨するマルチアカウント環境構築について解説します😎

AWS Control TowerでAWSのクロスアカウント環境構築!AWSの推奨するマルチアカウント環境構築について解説します😎

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは!

今回は、弊社でも採用実績多数の「AWS Control Tower」を利用した、AWS のマルチアカウント環境構築について解説していきたいと思います。

ぜひ最後までご覧ください。

想定する読者

  • AWS のマルチアカウント環境構築について知りたいヒト
  • プロジェクトに AWS Control Tower の導入を考えているヒト

はじめに

AWS Control Towerとは

AWS Control Tower とは、AWS のマルチアカウントの環境を一元的にセットアップ・管理するサービスです。マルチアカウント管理に必要なランディングゾーン(AWS Control Tower が設定する総合的なマルチアカウント環境)の構築や各種ガードレールの展開、権限のセットアップなどを行います。

引用:https://aws.amazon.com/jp/blogs/news/aws-control-tower-tokyo/

AWS Control Towerで自動構築されるAWSリソースとその概要

AWS Control Tower は、下記のような設計図を利用し、ランディングゾーンを自動化します。

  • AWS Organizations を使用したマルチアカウント環境
  • AWS Single Sign-On (SSO) のデフォルトのディレクトリを使用したID管理
  • AWS SSO を使用してアカウントにフェデレーティッドアクセスを提供
  • AWS CloudTrail のログや、Amazon S3 に保存される AWS Config のログの集中管理
  • AWS IAM および AWS SSO を使用してクロスアカウントセキュリティ監査を有効化

AWS Control Towerのメリットとユースケース

AWS Control Towerのメリット

AWS Control Tower のメリットは、マルチアカウントの統制を簡単かつ安全に行えることです。アカウントを複数管理する際に問題となるのが、アカウントの統制方法。設定をマルチアカウントに適用させようとすると、コストやセキュリティ面でさまざまな課題が生まれるため、エンジニアが頭を抱えることも多いです。

しかし、AWS Control Tower では AWS 環境の管理を自動化できます。手間を省いて簡単にアカウントを管理できることから、エンジニアの中で注目を集めています。

また、AWS Control Tower では「ガードレール(セキュリティ、オペレーション、コンプライアンス向けにパッケージ化されたガバナンスルール)」の設定により、違反行為の検出が可能です。これらの機能はアカウントの新規作成時や既存のアカウント変更時にも常に有効化されるため、設定変更等の面倒な手間なく利用することができます。

このように、AWS Control Tower は従来のマルチアカウント統制における課題を解決することができます。AWS Control Tower の使用によって、簡単かつ安全なマルチアカウント統制を実現できます。特にガードレールによる違反予防・検出はかなり強力なため、エンジニアからもリスク軽減に役立つとの声が上がっています。

AWS Control Tower のユースケース

  • マルチアカウント環境の設定と管理

ベストプラクティスの設計図に基づき、マルチアカウント構造を設定します。

  • 事前設定されたガードレールで大規模なガバナンス

選別されたガバナンスルールを有効化します。セキュリティ、オペレーション、コンプライアンスに関するポリシーを、アカウントに適用することができます。

AWS Control Tower が東京リージョンに対応!

AWS Control Tower のアップデートにより、AWS Control Tower が東京リージョンでも使用できるようになりました。

AWS Control Tower 管理画面を参照すると、ホームリージョンとして「アジアパシフィック(東京)」が選択できるようになっています。

アップデート以前は、マルチアカウント管理の手法としてランディングゾーンが用いられていました。しかし AWS Control Tower ではアカウント管理に必要な動作を自動化できるため、マルチアカウント管理がよりしやすくなりました。

なお、ランディングゾーンは引き続きサポートが提供されますが、新しい機能提供などは AWS Control Tower が基本になります。

既存プロジェクトへのAWS Control Towerの導入に対する意見

既存プロジェクトへの AWS Control Tower の導入についてですが、Ragate が特に採用を推奨したいのは次のプロジェクトです。

  • AWSのマルチアカウントの管理について、課題を抱えているプロジェクト
  • 大規模なプロジェクト

実際にマルチアカウントの管理に困っているプロジェクトや、これからアカウント管理に課題が生まれそうな大規模プロジェクトには、ぜひ積極的に導入を検討してみてほしいです。

AWS Control Tower では、難しい学習をせずともいきなりベストプラクティスにたどり着けるのも、エンジニアにとっては大きな利点です。

また、先述のように AWS Control Tower が東京リージョンで使用できるようになりました。このアップデートにより、これまで AWS Control Tower の導入を迷っているプロジェクトでも、より導入を検討しやすくなるはずです。

実際にAWS Control Towerに触ってみた

ここからは、実際に AWS Control Tower を使用していきます。

AWS Control Towerのセットアップ

まずはAWSにログインし、Control Tower のセットアップをしていきます。右上の「ランディングゾーンの設定」ボタンを押下します。

次に、リージョンやアカウント用アドレス等の必要事項を入力。最後に画面右下の「ランディングゾーンの設定」ボタンを押下します。なお、設定時は

  • 管理アカウント
  • ログアーカイブアカウント
  • アカウントの監査

の計3つのアカウント用アドレスが必要ですので、注意しましょう。

「ランディングゾーンの設定」ボタンを押下すると、セットアップが開始されます。所要時間は約60分とされていますが、実際にはもう少し短い時間で終了することが多いようです(筆者の場合、30分程度で完了しました)。また、ブラウザを閉じても設定が続行される点も便利ですね。

以下の画面が表示されれば、ランディングゾーンの設定は完了です。アカウント用に入力したアドレス宛に Amazon からメールが届きますので、確認しましょう。

ダッシュボードでは、ガイダンスやアカウント情報、ガードレール情報がまとめて記載されています。ワンクリックで詳細を確認することも可能で、まさにマルチアカウント管理において非常に便利な印象を受けました。

ガードレールの確認

ここで、AWS Control Tower の利点でもある「違反行為の防止・検出」に関わるガードレールの詳細確認します。

AWS Control Tower には、基準から外れるアクションを制限する「予防ガードレール」と、基準から外れるリソースを検出する「検出ガードレール」の2種類のガードレールがあります。それぞれの設定は、AWS Control Tower によって自動で行われます。

ダッシュボードからは、現在20の「予防ガードレール」と2の「検出ガードレール」が設定されていることがわかります。特別な設定をすることなく、自動で設定されました。

コンソール画面からは、有効化されているガードレールの詳細を確認することができます。

ガードレール名のリンクをクリックすると、該当ガードレールの説明やステータス、適用アカウント等の詳細な情報をまとめて確認できます。自動で設定できる上、ガードレールの情報をまとめて確認できる点が大変便利ですね。

まとめ

マルチアカウント環境構築に便利な AWS Control Tower の特徴を紹介しました。非効率になりがちなマルチアカウント統制にとても便利かつ安全な機能ですので、ぜひ積極的に取り入れてみてください!

このブログでは、AWS 関連の記事をどんどん公開しております。ご興味のある方はぜひ他の記事もご覧ください。

AWSに関する開発は、お気軽にお問い合わせください。