🎯

AWSのルートユーザでMFAを設定する

に公開

背景

AWSのマネジメントコンソールにrootユーザでログインすると、MFAを設定するよう警告が表示されるようになりました。

2024年からAWSはセキュリティ強化の一環として、ルートユーザーに対するMFA設定を強く推奨しています。

セキュア・バイ・デザイン: 2024 年に MFA 要件を強化 | Amazon Web Services ブログ

この記事は、AWSルートユーザにMFAを設定した記録です。

前提条件

MFAアプリをスマートフォンにインストールしておきます。以下のいずれかのアプリが利用できます。

  • Google Authenticator(iOS / Android)
  • Microsoft Authenticator(iOS / Android)
  • Authy(iOS / Android)

今回は個人的に馴染み深いGoogle Authenticatorを使用します。

設定手順

1. MFA設定画面を開く

  1. AWSマネジメントコンソールにrootユーザでログイン
  2. 右上のアカウント名をクリック
  3. 「Security credentials」を選択
  4. 「Multi-factor authentication (MFA)」セクションの「Assign MFA device」をクリック

2. MFAデバイスタイプの選択

デバイス名を入力し、「Authenticator app」を選択します。

  • Passkey or Security Key: 物理的なセキュリティキー(YubiKeyなど)
  • Authenticator app: スマートフォンアプリ(推奨)
  • Hardware TOTP token: ハードウェアトークン

3. QRコードをスキャン

  1. 「Show QR code」ボタンをクリックしてQRコードを表示
  2. Google AuthenticatorアプリでこのQRコードをスキャン
  3. アプリに表示される6桁のコードを確認

4. MFAコードを入力

「MFA code 1」と「MFA code 2」に、Google Authenticatorに表示される連続した2つのコードを入力します。

  • MFA code 1: 現在表示されているコード
  • MFA code 2: 次に更新されたコード(約30秒待つ)

2つの連続するコードを入力することで、時刻同期が正しく行われていることを確認しています。

「Register MFA」ボタンをクリックします。

5. 設定完了

以下の画面が表示されれば、MFA設定は完了です。

動作確認

設定後、実際にMFAが機能するか確認します。

  1. AWSマネジメントコンソールからサインアウト
  2. 再度rootユーザでログイン
  3. パスワード入力後、MFAコードの入力を求められることを確認
  4. Google Authenticatorに表示されるコードを入力してログイン

注意事項

リカバリーコードのバックアップ

重要: スマートフォンを紛失した場合に備えて、以下の対策を推奨します。

  • QRコード表示画面の「Show secret key」で表示されるキーをバックアップ
  • 別のデバイスにも同じQRコードを登録(複数デバイスで同時使用可能)
  • 復旧用の連絡先メールアドレスを登録

デバイス紛失時の対処

MFAデバイスを紛失した場合:

  1. AWSアカウントの代替連絡先に登録したメールアドレスから復旧リクエスト
  2. AWSサポートに連絡(アカウント情報の確認が必要)

ルートユーザの使用を最小限に

MFA設定後も、日常的な操作にはIAMユーザを使用することを推奨します。ルートユーザは以下の場合のみ使用します。

プライベートでの使用であっても私はルートユーザは使用せずに、IAMユーザを使用しています。IAMユーザでも請求情報は確認したいので、cost explorerは参照できるようにしています。

  • アカウント設定の変更
  • 請求情報の確認
  • IAMユーザの復旧
GitHubで編集を提案

Discussion