AWSのMFA設定でログインできない問題とその解決策

AWS（Amazon Web Services）では、アカウントのセキュリティを強化するために多要素認証（MFA）が広く利用されています。しかし、MFAの設定や管理に関して、初心者の方々が直面する問題や疑問は少なくありません。

この記事では私が直面した、MFAデバイスが正しいのにも関わらず、ログインの案内がこない際の対処方法について解説しています。

目次

1. [はじめに：私の経験談](#はじめに：私の経験談)
2. [MFAがわからない場合の主な原因](#mfaがわからない場合の主な原因)
3. [電話番号の不備について](#電話番号の不備について)
4. [IAMユーザーとルートユーザーの違いと確認方法](#iamユーザーとルートユーザーの違いと確認方法)
5. [AWSアカウントへのサインイン時にMFAデバイスが使用できない場合の対処法](#awsアカウントへのサインイン時にmfaデバイスが使用できない場合の対処法)
6. [注意点](#注意点)

---

### はじめに：私の経験談

AWSアカウントに久々にログインしようとした際に、MFAを設定していたもののメールアドレスとパスワードでサインイン後、MFAコードの入力画面で認証コードが届かず、本人確認の手順を試みました。メールアドレスの認証は完了したものの、電話番号への確認電話がかかってこない状況でした。確認画面に表示される電話番号の下4桁は自分の番号と一致していたため、原因が分からず困惑しました。

**結論を先に申しますと、ログインできない場合は、早急にAWSサポートに問い合わせることが最善の解決策です。**

英語でのお問いわせと日本語でのお問わせ、両方を行った上で、英語ではメールにてMFAリセットの旨の通知が、日本語ではお電話にて本人確認の上でMFAリセットの旨、両方でのご対応が届きました。
双方丁寧だったので、基本的には

### MFAがわからない場合の主な原因

1. **メールアドレスの不備**: アカウントに登録されているメールアドレスが正しくない、もしくはアクセスできない。
2. **電話番号の不備**: アカウントに登録されている電話番号が正しくない、もしくはアクセスできない。

### 電話番号の不備について

AWSでは、アカウントに登録する電話番号は国際電話番号形式である必要があります。例えば、日本の電話番号で「090-1234-5678」の場合、国際電話番号形式では「+819012345678」となります。この形式で登録されていないと、AWSからの確認電話が正常に受けられない可能性があります。

**国際電話番号形式の例**:

- 日本: +81 90 1234 5678
- アメリカ: +1 123 456 7890
- イギリス: +44 20 1234 5678

電話番号を正しい形式に更新することで、AWSからの確認電話が正常に受けられるようになります。

### IAMユーザーとルートユーザーの違いと確認方法

- **ルートユーザー**: AWSアカウント作成時に設定する主要なユーザーで、アカウント全体の管理権限を持ちます。
- **IAMユーザー**: アカウント内で個別に作成され、必要な権限のみを付与されたユーザーです。

**確認方法**:

ログインできない場合、以下の方法でユーザータイプを確認できます。

1. **メール確認**: AWSからの初回通知メールや、アカウント作成時のメールを確認し、ユーザータイプが記載されているか確認します。
2. **アカウントIDの確認**: IAMユーザーの場合、サインインURLにアカウントIDが含まれています。

ただし、これらの情報が不明な場合や確認できない場合は、以下の手順でAWSサポートに同時に聞いてみるのもいいでしょう。

### **AWSアカウントへのサインイン時にMFAデバイスが使用できない場合の対処法**

AWS（Amazon Web Services）では、多要素認証（MFA）を使用してアカウントのセキュリティを強化しています。しかし、MFAデバイスが故障したり、紛失した場合、サインインができなくなることがあります。以下に、MFAデバイスのリセット方法として、[**自分で行うMFAデバイスのリセット**](#自分で行うmfaデバイスのリセット)と[**AWSサポートへの問い合わせ**](#awsサポートへの問い合わせによるmfaデバイスのリセット)の2つの方法を紹介します。

---

### 自分で行うMFAデバイスのリセット

AWSでは、MFAデバイスが紛失または故障した場合、セルフサービスでリセットする手順が用意されています。この方法を使用するには、ルートユーザーのメールアドレスと電話番号にアクセスできる必要があります。（私と同様、電話番号が反応しないのであれば、[**AWSサポートへの問い合わせ**](#awsサポートへの問い合わせによるmfaデバイスのリセット)での解説をご参照ください）

**手順1: MFAデバイスのリセットフォームにアクセス**

AWSの[**mfaデバイスのリセットフォーム**](https://aws.amazon.com/jp/premiumsupport/knowledge-center/reset-mfa-device1/)にアクセスします。

**手順2: 必要事項の記入**

フォームに以下の情報を入力します：

- **Problem with authentication device**: 「My device was lost, stolen, or damaged」を選択します。
- **Phone number listed on account**: アカウントに登録されている電話番号を入力します。
- **Support language**: 「Japanese」を選択します。

※電話番号は、国際番号を含め、ハイフンなしで入力してください。例: +819012345678

**手順3: フォームの送信**

必要事項を入力後、「Submit」をクリックしてフォームを送信します。

---

### AWSサポートへの問い合わせによるMFAデバイスのリセット

セルフサービスでのリセットが難しい場合や、他の理由でサポートが必要な場合は、AWSサポートに問い合わせる方法があります。

**手順1: AWSサポートセンターにアクセス**

AWSサポートセンターに移動します。

**手順2: サポートケースの作成**

1. 「ケースを作成」ボタンをクリックします。
2. 問題のタイプとして「アカウントと請求」を選択します。
3. 以下の情報を入力します：

   - **件名**: AWSアカウントへのサインインに関する問題
   - **本文**:

     ```
     AWSサポートチーム様

     お世話になっております。現在、AWSアカウントへのサインイン時に多要素認証（MFA）のコードが受信できず、アカウントにアクセスできない状況です。

     以下に、アカウント情報を記載いたします。

     - アカウントID（もしくはアカウントエイリアス）: [アカウントIDを記載]
     - 登録メールアドレス: [メールアドレスを記載]
     - 登録電話番号: [電話番号を記載]
     - ユーザータイプ: [ルートユーザー / IAMユーザー]

     これらの情報をご確認いただき、アカウントへのアクセス回復のためのサポートをお願い申し上げます。

     以上、よろしくお願いいたします。
     ```

**手順3: フォームの送信**

必要事項を入力後、「送信」をクリックしてフォームを送信します。


- **方法B（AWSサポートへの問い合わせ）**: AWSサポートチームに直接連絡し、サポートを受けてMFAデバイスをリセットする方法です。セルフサービスが利用できない場合や、追加のサポートが必要な場合に適しています。

---

**注意点**

- **個人情報の保護**:公開の場で個人情報を詳細に記載することは避け、必要最低限の情報のみを提供するよう心がけましょう。

- **サポート対応時間**:AWSサポートへの問い合わせは、対応時間やサポートプランによって返信までの時間が異なる場合があります。

- **ユーザータイプの確認**:アカウントがルートユーザーかIAMユーザーかによって、対応方法が異なります。不明な場合は、アカウント作成時の情報を確認してください。

---

これらの方法を活用して、MFAデバイスの問題を解決し、AWSアカウントへのアクセスへの一助となれば嬉しいです。