公開日:2022年8月30日最終更新日: 2022年9月1日
AWSを利用するためには、AWSアカウントを発行してもらわなければなりません。AWSに申し込みをしてアカウントを発行してもらい、そのアカウントを利用してAWSの操作をします。
ただ、複数のアカウントを利用するようになると、発行してもらったアカウントの管理が煩雑になってしまいます。そのような場合にAWS Control Towerを利用すれば多くの問題を解決できるため、今回はこちらのサービスをご説明します。
目次 <Contents>
AWSのアカウントとはそもそも何か

AWSで「アカウント」と表現してもその意味合いは文脈によって異なります。まずはアカウントにはどのようなものがあるのかを簡単にご説明します。
AWSにおけるアカウントの役割
AWSにおけるアカウントには大きく分けて2種類あり「ルートアカウント」と「IAMユーザ」があります。これらは役割が大きく異なっていて、ルートアカウントはAWSと契約して全権が付与される重要なアカウントです。
それに対してIAMユーザはルートアカウントなどが追加でアカウントを作成し、その与えられた権限の範囲内でのみ作業ができます。
一般的にアカウントは用途ごとにIAMユーザを作成するのが望ましく、AWSとしても「マルチアカウント構成」を推奨しています。例えば、AWSアカウントを分離することで、「アクセス範囲の制限」「課金先の分離」などの制御ができます。
AWSではこのような制限を与えることで、「AWSをより安全に運用できる」と考えられています。AWSのベストプラクティスに沿って、役割ごとに多くのAWSアカウントを作成することが求められているのです。
役割が多いがゆえに管理が複雑
上記でご説明したとおりマルチアカウント構成がベストプラクティスであり、利用者は多くのアカウントを作成すべきです。ただ、そのように役割ごとのアカウントを作成すると、管理が複雑になってしまいます。「どれだけのアカウントがあるのか」「どのアカウントがどこに請求しているのか」などが把握できない可能性があるのです。
このように管理の複雑さがあることによって、マルチアカウント構成は避けられる傾向にあります。しかし、AWSとしてはマルチアカウント構成をベストプラクティスとしているため、これを採用してもらいたいのです。そこで、アカウント管理の複雑さからユーザを解放するために、AWS Control Towerと呼ばれるサービスが公開されました。以下では効率よくアカウント管理ができるAWS Control Towerとはどのようなサービスであるのかご説明します。
AWS Control Towerとは

上記でご説明したとおり、AWSのアカウントを効率よく管理するためにAWS Control Towerと呼ばれるサービスが公開されています。サービス内容をご存知ではない人も多いと思われるため、まずはこちらを理解しておきましょう。
AWS Control Towerの概要
AWS Control TowerはAWSがサービスを提供してきた経験から、ベストプラクティスに沿ったアカウント発行・管理を実現するサービスです。
利用者が自分で設定する部分はありますが、AWSのベストプラクティスをUIに沿った操作だけで実現できる点が大きな魅力です。AWSアカウントに関する詳しい知識がなくとも、指示通りに設定していけば理想的なAWSアカウントを発行できます。
ただ、こちらはAWSが経験から導き出した最低限のベストプラクティスであるため、それで十分だとは言い切れません。状況によっては自分たちで設定を追加する必要があります。
例えば社内ルールでアカウントの取り扱いについて何かしらルールがあるならば、そのルールに沿ってAWS Control Towerやアカウント設定をカスタマイズする必要があります。
AWS Control Towerの仕組み
実はAWS Control Towerが何かしら独自の機能を提供しているわけではありません。AWS Control Towerはマネージドサービスではあるものの、実態としてはすでに存在している各種AWSのサービスです。本来は自分たちで操作する必要があるAWSの各種サービスをAWS Control Towerを通じて簡単に設定できるようになっています。
具体的にどのような設定をしてくれるのかは、AWS Control Towerを利用するタイミングによって異なります。これはアカウント管理に関するベストプラクティスが日々変化しているからです。利用したタイミングでのベストプラクティスが適用されるように動作してくれます。
AWS Control Towerで理解すべき4つの機能
AWS Control TowerにはAWSのアカウント管理を簡略化するために多くの機能が用意されています。今回はそれの中でもAWS Control Towerを利用するにあたって最低限知っておきたい4つをピックアップしています。
アカウント作成
AWS Control Towerで事前にセットアップしておけば、その内容に従ったアカウントをすぐに作成できます。本来、アカウントを新規作成した際はAWSの標準で作成されるため、作成が完了してから改めて設定しなければなりません。
しかし、AWS Control Towerのコンソールから新しくアカウントを作成すれば、そのような作業は不要となります。
マルチアカウント構成を実現するために複数アカウントを発行するとなると、同じ設定を何度もしなければなりません。アカウント数が増えれば増えるほど作業は大きな負担になってしまいます。その点、AWS Control Towerを利用すると裏側で動作してくれ、人間の負担は緩和されるのです。
ログ管理
AWSには操作ログなどを収集する機能があり、AWS Control Towerはこれをまとめて管理できます。ログの収集についての設定を制御したり、ログの保存期間を指定したりできます。この設定を施すことによって、「意図的にログを取得しない」などの行為を防げるようになります。トラブルや不正が発生した際はログの有無が調査に影響するため、確実に取得するように制御可能です。
ログの取得自体はAWSの標準的な機能であり、設定も難しいものではありません。ただ、適切にログ管理についてコントロールしていなければ、ログを取得する意味が薄れてしまいます。適切なログ管理・ログ運用を実現する、ガバナンス的な効果を発揮してくれるのです。
シングルサインオン
アカウントを複数保有していると、アカウントを変更する度にIDとPWを利用してログインしなおす必要があります。頻度が少ない場合は影響がないかもしれませんが、度々だと大きな負担になりかねません。この問題を解決するために、AWS Control Towerにはシングルサインオンの機能が用意されています。
シングルサインオンの設定をしておくと、1つのアカウントにログインするだけで他のアカウントへの切り替えが可能です。その都度、他のアカウント情報を入力しなくとも初回だけ入力すれば良くなります、
ガードレール
事前に「禁止操作」や「警告操作」を設定しておけば、AWSの操作ミスやリスクのある操作を防止できる機能です。「ガードレール」は道路に設置されているものと同じで、大きな問題が起きないように「事前に防ぐ」との意味合いで利用されています。
AWSの運用担当者が多い場合、あまりAWSに詳しくない人が担当者になってしまうこともあるでしょう。そして、知らず知らずのうちにリスクとなる操作をしてしまうかもしれません。そのような操作を事前に防ぐためにガードレールが存在します。
まとめ
AWSのアカウントを一元管理できるAWS Control Towerについて説明しました。
現在のAWSはマルチアカウント構成を推奨しており、AWS Control Towerはそれを実現しやすくしてくれます。複数のアカウントを管理することは負担が大きく、かつ煩雑になってしまうため、AWSのサービスを利用して効率的かつ安全に管理することが重要です。
マネージドサービスを利用すればアカウント管理は簡略化できます。ただ、利用に当たっては事前準備しなければなりません。今回、準備の手順は割愛していますので、AWS公式ドキュメントを参照ください。