Microsoft 365でMFAを有効にする方法:セキュリティの既定値、条件付きアクセス、未登録ユーザーの洗い出し
セキュリティの既定値か条件付きアクセスで全ユーザーにMFAを適用し、段階的に展開して、未登録ユーザーをPowerShellで書き出す手順です。
要点: Microsoft 365の全ユーザーにMFAを必須にする方法は、公式にサポートされているものが2つあります。セキュリティの既定値(Security defaults)は選択肢のないスイッチ1つで、Microsoft Entra ID P1のないテナント向けです。条件付きアクセス(Conditional Access)は対象と除外を自分で決められ、MicrosoftはMicrosoft 365 Business Premiumでも利用できると説明しています。どちらか一方だけを使い、そのあとでMFA未登録のユーザー一覧を書き出して、一人ずつ対応してください。
この記事は、社内のMicrosoft 365テナントを管理している情シス担当者向けです。読み終えると、MFAが適用され、段階的な展開計画ができ、Entra ID P1またはP2(Microsoft 365 Business PremiumはP1を含みます)があるテナントなら、MFAの認証方法が未登録のアカウントのCSVも手元に揃います。手順は2026年10月28日にMicrosoft Learnで確認しました。
まず方式を選ぶ
セキュリティの既定値
- できること: 全ユーザーにMFA登録を求め、管理者にMFAを求め、必要に応じてMicrosoftの判断でその他のユーザーにも確認を出し、レガシー認証プロトコルとデバイスコードフローをブロックし、Azure管理ツールへのアクセスを保護します。
- カスタマイズ: なし。オンかオフだけです。
- ライセンス: Microsoft 365のサブスクリプション以外は不要です。
- 向いているケース: 条件付きアクセスのポリシーがなく、Entra ID P1のライセンスもないテナント。
条件付きアクセス
- できること: 自分で作ったポリシー(例:全ユーザーにMFAを要求)を適用し、緊急用アカウントやサービスアカウントを除外できます。
- カスタマイズ: 自由度が高く、ユーザー、アプリ、条件、許可コントロールを選べます。
- ライセンス: Microsoft Entra ID P1、またはMicrosoft 365 Business Premium。
- 向いているケース: ライセンスのあるテナント全般。MicrosoftはP1またはP2を持つ組織にはセキュリティの既定値だけでは合わないことが多いと説明しています。
この2つは置き換えの関係です。Microsoftの案内では、条件付きアクセスのポリシーに切り替える前にセキュリティの既定値を無効にします。
方法A:セキュリティの既定値を有効にする
少なくともConditional Access Administrator(条件付きアクセス管理者)ロールが必要です。
- Microsoft Entra管理センター(entra.microsoft.com)にサインインします。
- Entra ID > Overview > Properties を開きます。
- Manage security defaults を選びます。
- Security defaults を Enabled にします。
- Save を選びます。
保存の前に、レガシー認証に依存している管理者やアプリがないか確認してください。セキュリティの既定値はこれをブロックします。有効化したらすぐに全管理者がサインインして認証方法を登録するよう依頼します。Microsoftは、既存のサインイントークンを Revoke-MgUserSignInSession で取り消し、サインイン済みのユーザーにも登録を促すことも勧めています。
ユーザーは https://myprofile.microsoft.com で Security Info を選んで登録します。セキュリティの既定値では、登録できるのは通知を使うMicrosoft Authenticatorアプリです。Authenticatorの確認コードや、OATH TOTPに対応したアプリのコードも使えます。
セキュリティの既定値を使っている間は、組織全体で認証方法を無効にしないでください。Microsoftは、テナントにサインインできなくなるおそれがあると警告しています。
方法B:条件付きアクセスでMFAを必須にする
最初に緊急用アクセスアカウントを2つ作ります。Microsoftの推奨は、onmicrosoft.comドメインのクラウド専用アカウントで、Global Administratorロールを常時割り当て、サインインにはパスキー(FIDO2)を使う構成です。EmergencyAccessのようなグループに入れておけば、各ポリシーからこのグループ1つを除外するだけで済みます。
そのうえでポリシーを作ります。少なくともConditional Access Administratorロールが必要です。
- Microsoft Entra管理センターにサインインします。
- Entra ID > Conditional Access > Policies を開き、New policy を選びます。
- 分かりやすい名前を付けます。例:「CA001 Require MFA all users」。
- Assignments > Users or workload identities で All users を対象に含めるところは、いまはパイロットグループだけにします(「段階的に展開する」を参照)。第4週の終わりに All users へ広げます。
- Exclude に緊急用アクセスのグループを追加します。Microsoft Entra ConnectまたはCloud Syncを使っている場合は、ディレクトリロール Directory Synchronization Accounts も除外します。
- Target resources > Resources で All resources (formerly 'All cloud apps') を含めます。
- Access controls > Grant で Grant access を選び、Require authentication strength を選んで、組み込みの Multifactor authentication 強度を指定します。
- Enable policy を Report-only にして Create を選びます。
- レポートの結果を確認したら(「効いているかの確認」を参照)、Enable policy を On に変更します。まずパイロットグループで有効にし、前の回が安定したら次の回を加え、最後の回で All users に切り替えます。
テナントでセキュリティの既定値を使っている場合は、先に無効にします。Entra ID > Overview > Properties > Manage security defaults > Disabled (not recommended) > Save。
Microsoftがテナント内に独自の条件付きアクセスポリシー(例:「Multifactor authentication for all users」)を作成している場合があります。ポリシー一覧で Created by 列がMicrosoftになっている行を探してください。これらはReport-only(レポート専用)で作成され、そのままにしておくとMicrosoftが導入から30日以上後に有効にします。約2週間前に通知があります。Microsoftのものを使うか自前のものを使うかを決め、重複するポリシーを記録なしで残さないようにしてください。
段階的に展開する
- 第0週: 緊急用アカウントを作ってサインインを試し、ヘルプデスク用の案内文とユーザー向けの手順書を用意します。
- 第1週: 管理者だけ。All usersではなくDirectory rolesを対象にした別のポリシーを作り(除外は同じ。CA002の手順は条件付きアクセスの基本ポリシーにあります)、全員が登録したことを確認します。
- 第2週: 部署をまたいだ10〜20名のパイロットグループ。登録のリマインドを併用します。レポート専用では誰にも登録を促せないため、登録はリマインドか本番適用で進みます。
- 第3〜4週: 残りの社員を部署ごとに数回に分けて展開します。各回の初日の朝はヘルプデスクを手厚くします。
- 最後: ゲストとサービスアカウント。ユーザーアカウントをサービスアカウント代わりにしている場合は、可能ならワークロードID(workload identity)に置き換えます。
- 切り替え後: 未登録の一覧が空になるまで、毎週確認します。
画面に何が出るかを事前に伝えておきます。Microsoft Authenticatorの設定を求められ、サインイン時に画面に表示された数字をアプリに入力して承認する形になります。
未登録ユーザーを書き出す
使うのはMicrosoft Graph PowerShellです。提供終了したMSOnlineやAzureADモジュールではありません。サインインするアカウントには、レポートを読めるロール(Reports Reader、Security Reader、Global Readerなど)が必要です。このエクスポートにはMicrosoft Entra ID P1またはP2が必要です(Microsoft 365 Business PremiumはP1を含みます)。Microsoftが、認証方法のアクティビティデータにはP1またはP2のライセンスが必要と説明しているためです。セキュリティの既定値だけで運用している場合、テナント全体の一覧は使えません。セキュリティの既定値は元々、全ユーザーにサインイン時の登録を求めるので、各部署の責任者に社員が https://myprofile.microsoft.com で登録したか確認してもらい、最初の数週間はヘルプデスクの問い合わせを見守ります。
Install-Module Microsoft.Graph.Reports -Scope CurrentUser
Connect-MgGraph -Scopes "AuditLog.Read.All"
Get-MgReportAuthenticationMethodUserRegistrationDetail -All `
-Filter "isMfaRegistered eq false" |
Select-Object UserPrincipalName, UserDisplayName, UserType, IsAdmin,
IsMfaRegistered, IsMfaCapable, MethodsRegistered |
Export-Csv .\mfa-not-registered.csv -NoTypeInformation
初回のConnect-MgGraph実行時に、AuditLog.Read.All権限への同意を求められます。同意を与える権限のある人の承認が必要です。
登録はしてあるものの、認証方法ポリシーで許可されていない方法を使っているユーザーを探すには、フィルターを isMfaCapable eq false に変えます。管理者を先に確認したい場合は、Select-Object の前に | Where-Object IsAdmin を足します。
同じデータは管理センターの Entra ID > Authentication methods > Activity > Registration でも見られます。Microsoftによると、このレポートは最大36時間遅れることがあり、削除済みや無効化されたユーザーは表示されません。
よくある失敗
- セキュリティの既定値と条件付きアクセスを同時に使う。 先にセキュリティの既定値を無効にします。
- 緊急用アカウントがない。 ポリシーを1つ間違えただけで、管理者全員が締め出されます。2つ作り、サインインをブロックまたは制限するポリシーから除外します。
- ユーザーごとのMFA(per-user MFA)まで有効にする。 Microsoftはper-user MFAを推奨していません。セキュリティの既定値や条件付きアクセスを使っていれば、ユーザーごとの状態がDisabledなのは正常です。
- レガシー認証を忘れる。 IMAP、POP3、SMTPの基本認証を使う古いメールクライアントや複合機はMFAに対応できません。切り替え前にサインインログで洗い出します。
- レポート専用を飛ばす。 結果を見なければ、誰に影響が出るか分かりません。
- 初回のサインインが通ったら終わりと考える。 未登録のユーザーは、いずれ問い合わせになります。未登録の一覧を毎週つぶしていきます。
効いているかの確認
- Entra ID > Monitoring & health > Sign-in logs を開き、パイロットユーザーの対話型サインインを1件開きます。
- Conditional Accessタブ(ポリシーがレポート専用の間はReport-onlyタブ)で、どのポリシーが適用され、結果がどうだったかを確認します。
- テスト用ユーザーでプライベートウィンドウからサインインします。登録または承認を求められるはずです。
- P1またはP2のあるテナントでは、PowerShellの書き出しを毎週再実行します。CSVは少しずつ小さくなり、最後に空になります。
- 緊急用アカウントでサインインして今も使えることを確認し、日付を記録します。
- Microsoft Secure Score(security.microsoft.com/securescore)を開きます。Microsoftによると、セキュリティの既定値をオンにすると、「全ユーザーのMFA」「管理者ロールのMFA」「レガシー認証のブロック」の推奨アクションは満点が付きます。
FAQ
Outlookのメールで二段階認証を有効にするには?
Outlookの中で設定するものではありません。MFAはMicrosoft 365のアカウントに対して適用されるため、セキュリティの既定値か条件付きアクセスのポリシーをオンにすれば、Outlookのサインイン時に2段階目の確認が求められます。基本認証を使う古いクライアントは使えなくなるので、置き換えが必要です。
Microsoft 365のMFAはどのように動きますか?
ユーザーがパスワードを入力したあと、Microsoft Authenticatorで通知を承認するなど、2つ目の確認を求められます。セキュリティの既定値では、いつ確認を求めるかを、場所、デバイス、ロール、操作などの要素からMicrosoftが判断します。
Microsoft Authenticatorの使い方は?
https://myprofile.microsoft.com を開き、Security Infoを選んでAuthenticatorアプリを追加します。サインイン時にはアプリに承認リクエストが表示され、画面に出た数字をアプリに入力します。アプリの確認コードを使うこともできます。
Microsoft 365の全ユーザーにMFAを強制するには?
セキュリティの既定値(Entra ID > Overview > Properties > Manage security defaults)を使うか、All usersを対象に多要素認証を要求する条件付きアクセスポリシーを作ります。そのあとPowerShellで未登録ユーザーを書き出し、一覧が空になるまで対応を続けます。
MFAのサインインに失敗する、完了できないユーザーがいる場合は?
サインインログで失敗したサインインを開き、失敗の理由とConditional Accessタブを確認します。管理者全員が締め出された場合は緊急用アクセスアカウントを使います。ポリシーから除外しておく必要があるのはそのためです。
次の一歩
MFAや条件付きアクセスなど、テナント全体の設定を第三者の目で点検したい場合は、Microsoft 365セキュリティ監査をご覧ください。あわせて、Microsoft 365セキュリティチェックリストと香港の会計事務所でのMFA展開もおすすめです。
着手前に本格的な監査の料金を知りたい場合は、Microsoft 365 セキュリティ監査の費用で人数別の固定料金をまとめています。
共有:
今すぐ行動を
インサイトをビジネスのITロードマップへ。
APACのITエキスパートと15分間の無料相談をご予約ください。現在の環境を確認し、24時間以内にカスタマイズされたITロードマップを提供します。
すべてのサービスを見る無料チェックリスト
中国大陸へのIT展開前に確認すべき10の重要事項
PIPL準拠、ネットワーク分割、バイリンガルヘルプデスクの設定など、中国での初日に必要なすべてのIT準備。
チェックリストを申請 →📬 アジアIT月報
中国コンプライアンス情報、サイバーセキュリティ警報、APACチーム向けITのヒントを毎月お届けします。
スパムなし。いつでも配信停止できます。