ルートユーザーとは
AWSアカウントのルートユーザーは、AWS環境における最も権限の強い唯一のユーザーです。
| 項目 | 詳細 |
| 定義 | AWSアカウントを作成する際に設定したEメールアドレスとパスワードでサインインできるユーザーです。 |
| 権限レベル | アカウント内のすべてのAWSサービスおよびリソースに対して完全なアクセス権を持ちます。制限のないアクセス権限を持つため、請求情報を含むすべてにアクセス可能です。 |
| アカウント数 | 1つのAWSアカウントに対して1つだけ存在します。 |
ルートユーザーの主な役割と利用シーン
利用のベストプラクティス
AWSは、セキュリティ上のベストプラクティスとして、日常的なタスクにルートユーザーを使用しないことを強く推奨しています。ルートユーザーの認証情報は保護し、ルートユーザーでしか実行できない特定の管理タスクのためにのみ使用します。
日常的な業務やリソース構築は、IAM(Identity and Access Management)サービスで作成するIAMユーザーを利用します。IAMユーザーは、権限を制限して利用できるため、思わぬ事故を防ぎやすくなります。自分しかAWSを触らない場合でも、必要な権限だけを与えたIAMユーザーでの操作が推奨されています。

ルートユーザー認証情報が必要なタスク
以下のタスクは、非常に強い権限が必要であり、基本的にルートユーザーでのみ実行可能です(一部、IAMユーザーでも可能な場合がありますが、注意が必要です)。

基本的にルートユーザーは使用しないと覚えておきましょう。例外で必要になる場面が存在するため、例外的に必要なケースを整理しておくと良いでしょう。

| カテゴリ | ルートユーザでのみ実行可能なタスク例 |
|---|---|
| アカウント自体の管理 | AWSアカウント自体の解約。 |
| アカウント名、Eメールアドレス、ルートユーザーパスワード、ルートユーザーアクセスキーの変更。 | |
| 唯一の管理者IAMユーザーが誤ってアクセス許可を取り消し、操作不能になった場合に、そのIAMユーザーのアクセス許可を復元すること。 | |
| 請求・支払い関連 | AWSアカウントの請求情報の参照(デフォルト設定時)。 |
| AWSサポートプランの変更・キャンセル(ただし、特定のIAMユーザー権限でも可能な場合がある)。 | |
| 支払オプション(クレジットカード情報など)の参照、変更、または削除。 | |
| セキュリティ・リソース回復 | Amazon S3でMFA Deleteを有効化する。 |
| S3バケットやSQSのリソースポリシーを誤って「すべてのプリンシパルを拒否」に設定し、アクセス不能となった場合の、ポリシーの編集または削除。 | |
| 特殊なタスク | AWS GovCloud (US) のアカウント作成。 |
| 余ったEC2リザーブドインスタンスマーケットプレイスへの販売。 |
セキュリティ上の注意点とベストプラクティス
ルートユーザーは「全権限」を持つため、認証情報が漏洩するとAWSアカウント全体が危険に晒されます。以下のセキュリティ対策は必須です。
【1】MFA(多要素認証)を必ず設定する

ルートユーザーの認証情報には、MFA(多要素認証)を設定することが強く推奨されています。パスワードだけでなく、MFAデバイスのコードも必要にすることで、セキュリティを大幅に向上させます。
【2】アクセスキーは作成しない/削除する
ルートユーザーのアクセスキー(アクセスキー ID とシークレットアクセスキー)を作成することは推奨されていません。デフォルトではアクティブなアクセスキーはありません。万が一作成した場合は、誰とも共有せず、不要であれば削除しましょう。
※参考;https://docs.aws.amazon.com/signin/latest/userguide/introduction-to-root-user-sign-in-tutorial.html
【3】パスワードと連絡先情報の管理
◦ ルートアカウントのパスワードは、長く、複雑で、他には使用しないものを設定しましょう。
◦ アカウントの連絡先情報(電話番号など)を登録し、ログインできなくなった場合の回復手段を確保します。
◦ パスワードリセットのためのメールを受け取る人が特定の個人に依存しないことを確認しましょう。
【4】定期的な認証情報の見直しと監視
◦ ルートアカウントの認証情報にアクセスできる担当者を定期的に確認し、記録を残します。
◦ ルートアカウントのアクセスはまれなイベントであるため、Amazon CloudWatch Eventsなどのツールを使用してログインアラートを作成し、予期しないアクセスを監視します。
初期設定ポイント(アカウント作成後実施すべきこと)
AWSアカウントを作成し、ルートユーザーとしてログインした後、真っ先に以下の設定を実施し、日常的な業務をIAMユーザーに移行させることが重要です。

管理者IAMユーザーの作成とアクセス権付与
日常的なタスクを行うために、管理者権限を持つIAMユーザーを作成します。
管理者IAMユーザーの作成
1. ルートユーザーでIAMサービスにアクセスします。
2. IAMユーザーグループを作成し、アクセス権限として「AdministratorAccess」ポリシーを割り当てます。
3. 新しいIAMユーザーを作成し、作成した管理者グループに割り当てます。
4. 以降、ルートユーザーの使用を避け、作成したIAM管理者ユーザーで日常的な作業を行います。
請求情報へのアクセス権付与
ルートユーザーでしか請求情報を参照できないデフォルト設定を解除し、IAMユーザーで請求情報(Billing)にアクセスできるように設定を有効化します。
• 右上のメニューから「アカウント」を選択し、「IAMユーザーおよびロールによる請求情報へのアクセス」を有効化します。
その他の初期設定ポイント
パスワードポリシーの設定
今後IAMユーザーを作成する場合に備えて、「アカウント設定」からパスワードの長さや複雑さなど、パスワードポリシーの変更を行っておきましょう。
トラブル時の対応(サインインできない場合の対策)
ルートユーザーの認証情報(特にパスワードとMFA)は厳重に管理が必要ですが、万が一ログインできなくなった場合に備えて、対応策をまとめておきます。
| 状況 | 対応と対策 |
| パスワードを忘れた場合 | ルートアカウントのパスワードをリセットする手順掲載先です(https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/reset-root-password.html)。パスワードリセットのためのメールを受け取る人が特定の個人に依存しないように確認することも重要です。 |
| MFAデバイスを紛失/破損した場合 | MFAデバイスが使えなくなったときに、ルートアカウントのMFAをリセットする手順掲載さきです(https://qiita.com/zenden/items/98d21889d68a894d23ef)。アカウント連絡先情報として登録した電話番号を利用してログイン回復ができる可能性があります。 |
| 一般的なログイン問題 | AWSのサービス稼働状況や、ブラウザのキャッシュ/Cookieの影響でログインに失敗する可能性もあるため、これらを確認することも問題切り分けに役立ちます。 |
| IAMユーザーがロックされた場合 | 唯一の管理者IAMユーザーが誤ってアクセス許可を取り消した場合、ルートユーザーでログインし、ポリシーを編集することでアクセス許可を復元できます。 |
おわりに
AWSアカウントのルートユーザーは、まるで金庫のマスターキーのようなものです。このマスターキーを使えば、金庫(AWSアカウント)の中にあるすべての資産(リソースや請求情報)に無制限にアクセスできます。日常的にこのマスターキーを使ってしまうと、紛失や盗難のリスクが高まるため、金庫の奥に厳重に保管し、代わりに必要な権限だけを持つ合鍵(IAMユーザー)を作成して日常業務を行うのが、安全なAWS運用における基本原則です。


コメント