Entra IDのユーザー認証で起こりうるトラブル

# ユーザー認証に関連する主なトラブル

## 1.ユーザーがサインインできない
> 原因
- パスワードの入力ミス
- アカウントがロックアウトされている
- 多要素認証（MFA）の失敗（例：認証コードを受け入れない）
- 条件付きアクセスポリシーでログインが制限されている

> 解決策
- **パスワードリセット**
<details><summary>Entra IDポータルで「パスワードのリセット」を実行</summary>
<strong>管理者によるパスワードリセット</strong><br>
1.Microsoft Entraポータルにアクセス<br>
2.左メニューから「ユーザー」をクリック<br>
3.該当ユーザーを選択し「パスワードのリセット」をクリック<br>
4.新しいパスワードを設定しユーザーに通知<br>
<br>
<strong>セルフサービスパスワードリセット（SSPR）の有効化</strong><br>
1.Entraポータルで「パスワードリセット＞プロパティ」に移動<br>
2.「セルフサービスパスワードリセットを有効にする」をオンに設定<br>
3.ユーザーがメールまたはSMSでパスワードをリセット可能になる
</details>


- **MFAの再設定**
<details><summary>管理者によるMFAの再登録・設定</summary>
<strong>ユーザーのMFA登録をリセット</strong><br>
1.Entraポータルで「ユーザー」を開く<br>
2.該当ユーザーを検索し、選択<br>
3.「認証方法」セクションに移動<br>
4.「再登録を必須にする」を選択<br>
5.ユーザーに再登録を促す<br>
<br>
<strong>管理者が認証方法を再設定</strong><br>
1.Entraポータルで「セキュリティ＞認証方法」を選択<br>
2.該当するユーザーの設定を編集して新しい認証方法（例：SMS認証や電話認証）を登録
</details>


- **条件付きアクセスポリシーを確認**
<details><summary>ユーザーがいる場所やデバイスがポリシーに反していないかをチェック</summary>
<strong>ログで拒否の原因を確認</strong><br>
1.Entraポータルで「監視＞サインインログ」を開く<br>
2.ユーザーの失敗したサインインログを選択<br>
3.「詳細」を確認し、どの条件付きアクセスポリシーが適用されたかを確認<br>
<br>
<strong>ポリシーの緩和</strong><br>
1.「セキュリティ＞条件付きアクセス」に移動<br>
2.問題となったポリシーを選択し「編集」をクリック<br>
3.「条件」セクションでデバイスやネットワーク範囲を緩和（例：信頼済みIPアドレスを追加）<br>
4.「保存」をクリック
</details>

## 2.多要素認証（MFA）が機能していない
> 原因

- ユーザーが認証アプリを再インストールして設定が失われた
- スマートフォンが紛失または交換された
- SMSコードやプッシュ通知が届かない（通信環境の問題など）

> 解決策

- **バックアップ認証の利用**
<details><summary>予備の認証方法（例：電話認証）を設定しておく</summary>
<strong>バックアップの登録方法</strong><br>
1.ユーザーが設定ページにアクセスし「認証方法」で複数の方法を登録（例：認証アプリ+SMS）<br>
2.管理者が設定する場合、Entraポータルの「認証方法」でユーザーの設定を編集<br>
<br>
<strong>電話番号認証の利用</strong><br>
1.Entraポータルで「ユーザー＞認証方法」を開き、電話番号を登録<br>
2.ユーザーは電話認証を利用してログイン可能
</details>

- **管理者によるMFAのリセット**
<details><summary>管理者によるMFAの再登録・設定</summary>
<strong>ユーザーのMFA登録をリセット</strong><br>
1.Entraポータルで「ユーザー」を開く<br>
2.該当ユーザーを検索し、選択<br>
3.「認証方法」セクションに移動<br>
4.「再登録を必須にする」を選択<br>
5.ユーザーに再登録を促す<br>
<br>
<strong>管理者が認証方法を再設定</strong><br>
1.Entraポータルで「セキュリティ＞認証方法」を選択<br>
2.該当するユーザーの設定を編集して新しい認証方法（例：SMS認証や電話認証）を登録
</details>


- **認証アプリの再登録**
<details><summary>Microsoft Authenticacorを再インストール</summary>
<strong>Microsoft Authenticatorアプリを再登録</strong><br>
1.ユーザーに認証アプリを再インストールしてもらう<br>
2.管理者が「MFAの再登録を必須」に設定（手順は前述の「MFAリセット」）<br>
3.ユーザーが次回ログイン時にQRコードを使用して認証アプリを再登録<br>
</details>

**MicrosoftAuthenticator**
マクロソフトオーセンティケーターとはMicrosoftが提供するMFAアプリ。主にアカウントのセキュリティを強化するために使用、MFAやパスワードレス認証、アカウント管理（Google、Facebook AWSなども追加可能）、OTP（ワンタイムパス）の生成ができる。

## 3.条件付きアクセスポリシーが厳しすぎる
> 原因

- 管理者が設定したポリシーが過剰に制限的（例：未知のデバイスやIPからのアクセスをすべてブロック）
- ユーザーが新しいデバイスやネットワークからアクセス

> 解決策

- **ポリシーの緩和**
<details><summary>必要に応じて信頼できるIPアドレスやデバイスを許可リストに追加</summary>
<strong>信頼済みIPアドレスの追加</strong><br>
1.Entraポータルで「条件付きアクセス＞ネットワークの場所」を選択<br>
2.「信頼済みIPアドレス」セクションで社内ネットワークやVPNのIPアドレスを登録<br>
3.保存後、信頼済みIPからのログインではポリシーを緩和
</details>


- **ユーザーの通知**
<details><summary>条件付きアクセスポリシーの内容をユーザーに事前説明</summary>
<strong>ユーザーへの説明ポイント</strong><br>
1.条件付きアクセスの目的<br>
2.ポリシーの具体的な適用条件<br>
3.影響を受ける操作<br>
4.MFAやデバイス登録などの事前準備<br>
5.問い合わせ窓口の案内<br>
6.ユーザー向け説明資料の作成
</details>

- **ログの確認**
<details><summary>サインインログで拒否の原因を特定し必要に応じて設定を調整</summary>
<strong>ログで拒否の原因を確認</strong><br>
1.Entraポータルで「監視＞サインインログ」を開く<br>
2.「結果」の列で「拒否」を選択してフィルタリング<br>
3.必要に応じて「ユーザー名」「アプリ名」「条件付きアクセス」などでさらに絞り込む<br>
4.問題のサインインログをクリックして詳細を確認、「条件付きアクセス」タブで適用されたポリシーや拒否の原因が表示される
</details>

## 4.パスワードレス認証のトラブル
> 原因

- FIDO2セキュリティキーが動作しない（例：デバイスの互換性問題）
- Windows Helloの設定が正しくない
- ユーザーがパスワードレス認証の手順を理解していない

**FIDO2（ファイド・ツー）**
次世代のオンライン認証技術を提供する標準でパスワード不要の安全な認証を実現するために開発された。フィッシングやパスワード漏洩のリスクを減らす。多くのサービスや企業で採用が進んでいる。
**[特徴]**
1.パスワード不要
2.公開鍵暗号方式を使用
3.クロスプラットフォーム対応
4.ハードウェアセキュリティキーの利用

> 解決策

- **セキュリティキーの動作確認**
<details><summary>デバイスがFIDO2に対応しているか確認</summary>
<strong>Microsoft EntraIDの設定で確認</strong><br>
1.Entra管理ポータルにサインイン<br>
2.「セキュリティ」→「認証方法」→「FIDO2セキュリティキー」を選択<br>
3.サインインを試みてデバイスが対応しているか確認<br>
（他、Windows、macOS、外部セキュリティキー、モバイルデバイスでも確認可能）<br>
</details>
<details><summary>ドライバーやブラウザのアップデートを実行</summary>
<strong>Windows Updateを実行</strong><br>
1.「設定」→「Windows Update」→「更新プログラムの確認」をクリック<br>
2.必要な更新プログラムをインストールする<br>
<br>
<strong>デバイスマネージャーで確認</strong><br>
1.「スタート」→「デバイスマネージャー」を検索して開く<br>
2.「セキュリティデバイス」や「ユニバーサルシリアルバスコントローラー（USB）」を展開しFIDO2対応デバイスを右クリック<br>
3.「ドライバーの更新」を選択し最新バージョンを検索、インストール<br>
<br>
<strong>ブラウザのアップデート</strong><br>
ChromeやSafariなど設定からアップデートをする<br>
<br>
</details>
※確認・テストの為、EntraID管理ポータルにアクセスしFIDO2セキュリティキーの設定や認証を試す。問題が解決しない場合、デバイスやブラウザに特定の問題がないかを調査するためエラーメッセージを確認する



- **Windows Helloの再設定**
<details><summary>生体認証を再構成</summary>
<strong>デバイスの設定を確認</strong><br>
1.[Windows設定]＞[アカウント]＞[サインインオプション]に移動<br>
2.Windows Hello（顔認証または指紋認証）が有効化されているか確認<br>
<br>
<strong>Windows Helloの再設定</strong><br>
1.問題が解決しない場合は顔認証や指紋認証を削除して再登録
</details>


- **ガイドの提供**
<details><summary>パスワードレス認証の使用手順をわかりやすく説明</summary>
<strong>①管理者による事前設定</strong><br>
<strong>認証の有効化</strong><br>
1.Microsoft Entra管理センターにサインインする<br>
2.「セキュリティ」→「認証方法」を選択<br>
3.「FIDO2セキュリティキー」「MicrosoftAuthenticator」「Windows Hello for Business」を有効化<br>
4.ポリシー設定を構成する（例：特定のグループのみに適用）<br>
<br>
<strong>条件付きアクセスの設定</strong><br>
1.「セキュリティ」→「条件付きアクセス」を開く<br>
2.新しいポリシーを作成し特定のアプリやユーザーにパスワードレス認証を要求する<br>
<br>
<strong>②ユーザー側の設定と使用方法</strong><br>
<strong>FIDO2セキュリティキーを使用</strong><br>
1.管理者がFIDO2を有効にしていることを確認する<br>
2.Microsoft My Sign-Insにサインイン<br>
3.「セキュリティ情報」→「追加」をクリック<br>
4.「セキュリティキー」を選択し画面の指示に従ってFIDO2キーを登録<br>
（USBまたはNFC接続のセキュリティキーをデバイスに挿入しPINまたは生体認証で設定）<br>
<br>
<strong>Microsoft Authenticatorアプリを使用</strong><br>
1.管理者がAuthenticatorアプリを有効にしていることを確認する<br>
2.スマートフォンにMicrosoft Authenticatorアプリをインストール<br>
3.アプリを起動し「アカウントを追加」→「職場または学校アカウント」を選択<br>
4.QRコードをスキャンしてアカウントを追加<br>
5.ログイン時に通知を承認することでパスワードレス認証を実行<br>
<br>
<strong>Windows Hello for Businessを使用</strong><br>
1.WindowsデバイスでWindows Helloが有効になっていることを確認<br>
2.「設定」→「アカウント」→「サインインオプション」を開く<br>
3.Windows Hello（指紋認証、顔認証、またはPIN）を設定<br>
4.パスワードレス認証時Windows Helloを使用してサインイン
</details>



# 管理者が遭遇する可能性のあるトラブル

## 1.ユーザーが多すぎて管理ができなくなる
> 原因

- ユーザー毎に個別設定が必要
- 大量のユーザーに対して一括設定ができてない

> 解決策

- グループベースの管理
<details><summary>ユーザーをグループに分け、ポリシーやアクセス権をグループ単位で適用</summary>
<strong>グループベースの管理</strong><br>
1.「ユーザー＞グループ」に移動<br>
2.新しいグループを作成し、対象のユーザーを追加<br>
3.ポリシーや条件付きアクセスをグループ単位で適用<br>
</details>


- 自動プロビジョニング
<details><summary>Azure AD Connectを利用してオンプレミスADと同期</summary>
<strong>オンプレミスADとAzureADを同期し自動プロビジョニング</strong><br>
<strong>1. 準備作業</strong><br>
<strong>(1) 要件確認</strong><br>
<strong>[サーバー要件]</strong><br>
Windows Server 2016以降（推奨）<br>
.NET Framework 4.7.2以上をインストール<br>
<strong>[必要な権限]</strong><br>
Azureサブスクリプションのグローバル管理者権限<br>
オンプレミスADのドメイン管理者権限<br>
<strong>[Azure ADライセンス]</strong><br>
自動プロビジョニングには、Microsoft Entra ID Premium P1以上のライセンスが必要<br>
<strong>[カスタムドメインの確認]</strong><br>
AzureポータルでオンプレミスADのドメインをカスタムドメインとして追加・確認<br>
<strong>2. Azure AD Connectのインストールと構成</strong><br>
<strong>(1) Azure AD Connectのダウンロード</strong><br>
Microsoft公式サイトから最新バージョンのAzure AD Connectをダウンロード<br>
<strong>(2) インストール手順</strong><br>
<strong>1.	セットアップの実行</strong><br>
ダウンロードしたインストーラーを実行し、セットアップウィザードを開始<br>
<strong>2.	構成方法の選択</strong><br>
エクスプレス設定（推奨）：一般的な構成に適している<br>
カスタム設定：特定のOUフィルタリングや認証方式（パススルー認証、フェデレーションなど）の設定が必要な場合<br>
<strong>3.	Azure ADの資格情報を入力</strong><br>
Azure管理者アカウントで認証する<br>
<strong>4.	オンプレミスADの資格情報を入力</strong><br>
ドメイン管理者アカウントを使用してオンプレミスADに接続<br>
<strong>5.	同期範囲の設定（カスタム設定のみ）</strong><br>
必要に応じて、特定のOUや属性を同期対象として選択<br>
<strong>6.	同期方式の選択</strong><br>
パススルー認証またはフェデレーションを構成（必要に応じて設定）<br>
<strong>(3） 初期同期の実行と確認</strong><br>
<strong>1. 初期同期の開始</strong><br>
インストール後、自動的に初期同期が実行される<br>
<strong>2. 同期状況の確認</strong><br>
<strong>①Azureポータルで確認</strong><br>
「Entra ID」→「監視」→「同期サービス」で状況を確認<br>
<strong>②エラー確認</strong><br>
同期エラーがないかチェック<br>
<strong>3.手動同期の実行</strong><br>
以下のコマンドをPowerShellで実行して手動同期をトリガー
```
Start-ADSyncSyncCycle -PolicyType Delta
```
<br>
<strong>4. 自動プロビジョニングの構成</strong><br>
<strong>(1) プロビジョニング設定</strong><br>
<strong>1.	Azureポータルにアクセス</strong><br>
- [Microsoft Entra管理センター](entra.microsoft.com)にサインイン<br>
<strong>2.	プロビジョニング設定を開く</strong><br>
「Entra ID」→「プロビジョニング」→「アプリプロビジョニングポリシー」<Br>
<strong>3.	アプリケーションの割り当て</strong><br>
必要なアプリケーションに対して、自動プロビジョニングを有効化<br>
<strong>(2) ユーザープロビジョニングフロー</strong><br>
オンプレミスADで新しいユーザーを作成すると、自動的にAzure ADに同期される<br>
グループやロールも自動的に割り当て可能<br>
<strong>5. 監視とトラブルシューティング</strong><br>
<strong>(1) Azure AD Connect Healthの利用</strong><br>
Azure AD Connect Healthを有効化して、同期エラーやサービス状況を監視<br>
<strong>(2) ログの確認</strong><br>
Azureポータルの「監査ログ」や「サインインログ」を確認<br>
問題がある場合は、ログからエラーを特定して解決<br>
<strong>6. ベストプラクティス</strong><br>
<strong>1.	同期スケジュールの設定</strong><br>
デフォルトで30分ごとに同期が実行されますが、要件に応じて調整可能<br>
<strong>2.	属性フィルタリング</strong><br>
不要な属性やOUを同期対象から除外して効率化<br>
<strong>3.	フェールオーバーの設定</strong><br>
必要に応じてAzure AD Connectサーバーの冗長構成を設定
</details>


- PowerShellでの自動化
<details><summary>スクリプトを使って大量のユーザー設定を一括管理</summary>
<strong> -  [PowerShellユーザー設定の自動化スクリプト]()</strong>
</details>



## 2.サインインログやレポートの膨大なデータ
> 原因

- 大量のサインインログやセキュリティレポートで分析が困難

> 解決策

- Azure Monitorと統合
<details><summary>ログデータをAzureMonitorやLogAnalyticsを使って可視化</summary>
<strong>AzureMonitorとLogAnalyticsを利用する事で以下のような可視化と分析が可能になる</strong><br>
1.サインインログのリアルタイム分析<br>
2.ユーザーのサインイン傾向（失敗や多要素認証の統計）<br>
3.特定のエラーや異常アクティビティの可視化<br>
4.カスタムダッシュボードによる効率的なデータ観覧
</details>



- フィルタリング
<details><summary>重要なログ（失敗したサインイン、不審な活動）だけを抽出</summary>
<strong>AzureMonitorとLogAnalyicsを使用するとログデータを効率的にフィルタリングし必要な情報だけを取得できる</strong>
</details>

- 通知の設定
<details><summary>異常なログイン活動に対するアラート設定</summary>
<strong>AzureMonitorとLogAnalyticsを活用する</strong><br>
</details>

:::note info
[AzureMonitorとLogAnalytics](https://qiita.com/Yukimi_Choko/items/c7fff13a1549b7ef70e2)を参照
:::

 

## 3.外部ユーザーの招待が機能しない
> 原因

- ゲストアカウントのポリシーが厳しい
- 招待メールがスパム扱いされている

> 解決策

- B2B設定の確認
<details><summary>「外部コラボレーション設定」でゲストの招待を許可</summary>
<strong>外部コラボレーション設定を確認</strong><br>
1.Microsoft Entra管理センターにサインイン<br>
2.「設定」→「外部アイデンティティ」→「外部コラボレーション設定」を選択<br>
3.ゲスト招待を許可（「すべてのユーザー」または「特定の管理者」に設定）<br>
4.必要に応じてドメイン制限を解除<br>
5.保存をクリック<br>
（その後PowerShellで招待ポリシーを確認したりするなどすると良い）
</details>


- メール設定の確認
<details><summary>招待メールがユーザーに届かない場合、スパムフィルタをチェック</summary>
<strong>★招待メールがスパムとして処理されている場合があるので招待を受けるユーザーに確認してもらう</strong><br>
<strong>招待メールの再送信</strong><br>
1.Azureポータルで「Microsoft Entra ID」→「ユーザー」→「ゲストユーザー」を開く<br>
2.対象ユーザーを選択し「招待を再送信」をクリック<br>
</details>


- ポリシーの緩和
<details><summary>必要に応じてゲストユーザーのアクセスポリシーを見直す</summary>
<strong>外部コラボレーション設定を確認</strong><br>
1.Microsoft Entra管理センターにサインイン<br>
2.「設定」→「外部アイデンティティ」→「外部コラボレーション設定」を選択<br>
3.ゲスト招待を許可（「すべてのユーザー」または「特定の管理者」に設定）<br>
4.ゲスト制限の設定（ゲストが組織のディレクトリデータにアクセスできるか制御、必要に応じて制限を緩和する）<br>
5.設定を変更後、保存をクリック<br>
<br>
<strong>条件付きアクセスポリシーを確認</strong><br>
条件付きアクセスポリシーが原因でゲストユーザーの招待やアクセスがブロックされている場合がある<br>
1.「Microsoft Entra ID」→「セキュリティ」→「条件付きアクセス」を開く<br>
2.外部ユーザー（ゲスト）に適用されているポリシーを確認<br>
3.「ゲストユーザーをブロックする」設定が有効になっていないか<br>
4.ゲストにMFA（多要素認証）を必須としていないか<br>
5.必要に応じてポリシーを編集しゲストの招待を許可<br>
（その後PowerShellでゲストの招待ポリシーが正しく構成されているかを確認する）
</details>


# トラブルシューティングのポイント
- サインインログを確認する
Entra IDポータルで「サインインログ」を確認しトラブルの原因を特定
- ポリシーの適用範囲を確認する
条件付きアクセスポリシーやMFAが過剰に厳しくないかをチェック
- バックアップ認証方法を用意する
多要素認証が失敗した場合に備え、代替手段（電話認証やメール認証）を設定
- ユーザーへの教育
トラブルを防ぐためにMFAの登録方法やパスワードレス認証の使い方をユーザーに説明
- Microsoftサポートを活用
トラブルが解決しない場合は、Microsoftの公式サポートに問い合わせ