AWS のルートユーザー・管理者アカウントを複数人で使うときの管理
AWS は、ルートユーザーを日常の作業に使わず、それにしかできない作業に限るよう勧めています。日常の管理は IAM Identity Center の個人の ID で行い、ルートユーザーは二段階認証(MFA)を付けて保管し、記録を残します。
AWS のルートユーザーは、複数人で日常的に使うものではなく、保管しておいて限られた作業にだけ使うものです。AWS の公式ドキュメントは、日常の作業をルートユーザーで行わないよう強く勧めています。日常の管理者は個人の ID で作り、ルートユーザーは MFA(多要素認証。パスワードに加えて 2 つ目の方法で本人を確かめること)を付けて、使ったら記録が残る形にします。
ルートユーザーとは何か
AWS アカウントを作ると、最初に 1 つのログイン ID ができます。アカウント内のすべてのサービスと資源に完全にアクセスできるこの ID がルートユーザーで、アカウント作成時のメールアドレスとパスワードでログインします。公式ドキュメントは、ルートユーザーの認証情報を保護し、ルートユーザーにしかできない作業にだけ使うよう求めています。ルートユーザーの MFA は既定で必須になっており、最初のログインから 35 日以内に登録しないとマネジメントコンソールに入れなくなります。管理者用アカウントの中での位置づけは特権 ID(管理者用アカウント)とはにまとめています。
ルートユーザーにしかできない作業
公式ドキュメントが挙げる作業は、アカウントそのものと支払いに関するものが中心です。
- アカウントの管理: ルートユーザーのメールアドレス・パスワード・アクセスキーの変更と、アカウントの解約。どちらも、AWS Organizations に入っていない単独のアカウントの場合です。
- 権限の復旧: 唯一の IAM 管理者が誤って自分の権限を消したときに、ログインして戻すこと。
- 請求: 請求とコスト管理のコンソールへの IAM アクセスの有効化、一部の請求作業、一部の税の請求書の閲覧。
- 特定のサービス: 設定の誤りで誰も操作できなくなった保存領域やキューの修正、一部のサービスの申込みや出品者登録など。
それ以外の作業はルートユーザーで行う必要がない、というのが公式ドキュメントの整理です。日常の設定変更や運用を担当者がルートユーザーで行っている場合は、次の節の形に移せます。
日常の管理者は個人の ID にする
公式ドキュメントは、日常の作業とリソースへのアクセスのために、AWS IAM Identity Center に管理者ユーザーを作るよう勧めています。IAM Identity Center は、社内の利用者を AWS アカウントやアプリケーションにつなぐ AWS の仕組みです。すでに使っている ID 管理サービス(Okta、Microsoft Entra ID など)や Active Directory とも接続できます。接続すると、利用者とグループを同じ内容にそろえられます。IAM Identity Center の中に利用者を直接作ることもできます。複数の AWS アカウントへのアクセスを一か所で管理し、管理者などの職務ごとの権限のまとまり(許可セット)を利用者やグループに与えられます。
IAM のセキュリティのベストプラクティスは、人間の利用者には ID 管理サービスと連携した一時的な認証情報を使わせることを挙げています。MFA を必須にすること、最小限の権限にすること、使われていない利用者や権限を定期的に見直して削除することも並んでいます。IAM ユーザー(パスワードやアクセスキーを長く持ち続ける ID)は、一時的な認証情報を使えない場合に限るとされています。この形にすると、誰がどの権限で入ったかが個人の ID で残ります。
複数人で使わざるを得ないルートユーザーの扱い
ルートユーザーは 1 つしか作れないため、担当者が交代しても同じ ID を使うことになります。公式ドキュメントのルートユーザーのベストプラクティスは、次の扱いを挙げています。
- ルートユーザーのパスワード、MFA、アクセスキーは、厳密な業務上の必要がある人以外と共有しない。パスワードの保管場所へのアクセスは記録して監視し、2 人以上の承認を要する形を検討する。
- パスワードを持つ管理者のグループと、MFA を持つ管理者のグループを分け、両方から 1 人ずつそろわないとログインできない形(複数人承認)を可能な限り使う。
- ルートユーザーのメールアドレスは、個人ではなく、会社が管理し複数の人に転送されるグループアドレスにする。担当者の休暇や退職で AWS からの連絡が止まらないようにするためです。
- ルートユーザーのアクセスキー(プログラムから操作するための鍵)は作らない。
- MFA は複数登録する(最大 8 台)。1 台が壊れても別の 1 台で入れる。
- 復旧に使うメールの受信箱と電話番号は、同じ人が両方にアクセスできないよう、別のグループが管理する。
複数の AWS アカウントを AWS Organizations でまとめている場合は、メンバーアカウントのルートユーザーの認証情報を中央で削除できます。削除すると、そのアカウントではルートユーザーでのログインもパスワードの再設定もできなくなります。Organizations で新しく作るアカウントは、既定でルートユーザーの認証情報を持ちません。ルートユーザーにしかできない作業の一部は、管理アカウントから行えます。
使った記録をどう残すか
AWS CloudTrail は、コンソールやプログラムからの操作をイベントとして記録し、誰が何をいつ行ったかを確かめられるサービスです。直近 90 日分の管理イベントはイベント履歴として無料で検索・ダウンロードでき、それより長く残すにはトレイル(S3 への保存)を作ります。ルートユーザーのベストプラクティスは、ルートユーザーのログインと利用を監視・通知・報告するよう勧め、通知の仕組みの例を挙げています。
ただし、ルートユーザーは 1 つの ID なので、CloudTrail の記録には「ルートユーザー」としか残りません。公式ドキュメントはパスワードの保管場所へのアクセスの記録と監視を勧めているので、その記録と複数人承認の記録が、誰が使ったかの手がかりになります。
よくある質問
ルートユーザーのメールアドレスは担当者個人のものでよいですか
公式ドキュメントは、会社が管理し複数人に転送されるグループアドレスを勧めています。担当者の退職や休暇で AWS からの連絡が止まらないようにするためです。他の用途に使わないことも求めています。
ルートユーザーの MFA は 1 台のスマホでよいですか
最大 8 台まで登録でき、公式ドキュメントは複数登録を強く勧めています。1 台が壊れたり紛失したりしても、別の MFA で入れるためです。
管理者は IAM ユーザーで作ってはいけませんか
公式ドキュメントは IAM Identity Center の利用者と一時的な認証情報を勧めています。IAM ユーザーはパスワードやアクセスキーを長く持つため、一時的な認証情報を使えない場合に限るとしています。
ルートユーザーが使われたことは分かりますか
CloudTrail にログインと操作が記録され、ルートユーザーのログイン時に通知する設定を組めます。誰が使ったかは記録に残らないため、保管場所へのアクセスの記録で補います。
Junify の場合
- 人手で続けると
- 管理者用アカウントを誰に持たせるかを申請と承認で回し、共有のまま残るものは使うたびに記録し、その記録を管理者以外が定期的に点検することになります。
- Junify なら
- Junify は、ルートユーザーのように 1 つしか作れない ID の保管場所になります。管理者が ID とパスワードを登録し、担当者は自分のスマホで本人確認をしてから使うため、誰が・いつ使ったかが一人ひとり残ります。認証アプリ方式(仮想 MFA デバイス)なら、そのコードも Junify が入力し、パスワードもコードも担当者に渡りません。担当を外れたら割り当てを外すだけです。
参考資料
- AWS Identity and Access Management ユーザーガイド「AWS account root user」
- AWS Identity and Access Management ユーザーガイド「Multi-factor authentication for AWS account root user」
- AWS Identity and Access Management ユーザーガイド「Root user best practices for your AWS account」
- AWS Identity and Access Management ユーザーガイド「Security best practices in IAM」
- AWS IAM Identity Center ユーザーガイド「What is IAM Identity Center?」
- AWS CloudTrail ユーザーガイド「What Is AWS CloudTrail?」
同じテーマの記事
-
SaaS の管理者用アカウントを管理する方法の比較
台帳と貸出の記録、ID 管理サービスの代わりの入力、特権 ID 管理(PAM)の製品、アクセス管理ツールの 4 つを、パスワードを知るか、記録の単位、退職時、二段階認証、ログイン後の管理、前提、向く規模の 7 つで比べます。
-
Google Workspace・Microsoft 365 の特権管理者アカウントの管理
最上位の管理者(特権管理者・グローバル管理者)を少なくし、役割に応じた管理者権限に分け、管理者に二段階認証を必須にし、緊急用のアカウントを分けます。Google と Microsoft の公式ドキュメントが勧めることの整理です。
-
Okta・Entra ID がある会社で、それでも残る共有の管理者アカウント
ID 管理サービスは、共有の管理者アカウントも預かったパスワードを代わりに入力する機能で扱えます。残るのは、そこにアカウントのない人が使う場面、ログイン後の記録が要る場面、管理画面側の二段階認証のコードを扱う場面の 3 つです。