Microsoft 365 如何開啟 MFA:安全預設值、條件式存取,以及找出尚未註冊的用戶
用安全預設值或條件式存取為全員開啟 Microsoft 365 MFA,分階段推行,並用 PowerShell 匯出尚未註冊 MFA 的用戶。
簡短回答: 為 Microsoft 365 全員強制 MFA,有兩種官方支援的做法。安全預設值(Security defaults)是一個沒有選項的開關,適合沒有 Microsoft Entra ID P1 的租戶;條件式存取(Conditional Access)可以自行選擇涵蓋誰、排除誰,微軟說明 Microsoft 365 Business Premium 的客戶也可以使用。兩者擇一,不要同時開,然後匯出尚未註冊的用戶名單逐一跟進。
本文寫給負責公司 Microsoft 365 租戶的管理員。讀完你可以做到:MFA 已強制開啟、有一份分階段推行計劃、如果租戶有 Entra ID P1 或 P2(Microsoft 365 Business Premium 含 P1),還能得到一份所有未註冊 MFA 方法的帳戶清單。步驟已於 2026 年 10 月 28 日對照 Microsoft Learn 核對。
先選方法
安全預設值
- 作用: 要求所有用戶註冊 MFA,要求管理員使用 MFA,必要時由微軟決定提示其他用戶,封鎖舊式驗證協定,封鎖設備代碼流程,並保護 Azure 管理工具的存取。
- 可自訂程度: 沒有,只有開和關。
- 授權: 除 Microsoft 365 訂閱本身外,不需要額外授權。
- 適合: 沒有條件式存取策略、也沒有 Entra ID P1 授權的租戶。
條件式存取
- 作用: 按你建立的策略執行,例如「全體用戶須使用 MFA」,並可排除緊急存取帳戶和服務帳戶。
- 可自訂程度: 完全可自訂,可選用戶、應用程式、條件和授予控制項。
- 授權: Microsoft Entra ID P1,或 Microsoft 365 Business Premium。
- 適合: 擁有授權的任何租戶。微軟表示,擁有 P1 或 P2 授權的機構通常不適合只用安全預設值。
兩者是互相取代的關係。微軟的說明是:要改用條件式存取策略,先停用安全預設值。
做法 A:開啟安全預設值
至少需要 Conditional Access Administrator(條件式存取管理員)角色。
- 登入 Microsoft Entra 管理中心(entra.microsoft.com)。
- 前往 Entra ID > Overview > Properties。
- 選取 Manage security defaults。
- 把 Security defaults 設為 Enabled。
- 選取 Save。
儲存之前,先確認沒有管理員或應用程式仍在使用舊式驗證,因為安全預設值會將它封鎖。開啟後請所有管理員立即登入一次,以便註冊驗證方法。微軟亦建議用 Revoke-MgUserSignInSession 撤銷現有登入令牌,讓已登入的用戶被迫走一次註冊流程。
用戶到 https://myprofile.microsoft.com 選取 Security Info 註冊。安全預設值下,註冊方式是附通知的 Microsoft Authenticator 應用程式;用戶亦可使用 Authenticator 或任何 OATH TOTP 應用程式產生的驗證碼。
安全預設值開啟期間,請勿在機構層面停用驗證方法。微軟警告這可能令你被鎖在租戶之外。
做法 B:用條件式存取強制 MFA
先建立兩個緊急存取帳戶。微軟建議:僅雲端帳戶、使用 onmicrosoft.com 域名、永久指派 Global Administrator 角色,登入方式用通行密鑰(passkey,FIDO2)。把它們放進一個群組,例如 EmergencyAccess,之後每條策略只需排除這一個群組。
然後建立策略,至少需要 Conditional Access Administrator 角色。
- 登入 Microsoft Entra 管理中心。
- 前往 Entra ID > Conditional Access > Policies,選取 New policy。
- 起一個清楚的名稱,例如「CA001 Require MFA all users」。
- 在 Assignments > Users or workload identities 下,暫時只包含試行組(見「分階段推行」),到第 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。
微軟也可能已在你的租戶內建立自己的條件式存取策略,例如「Multifactor authentication for all users」。打開策略清單,找 Created by 欄寫著 Microsoft 的項目。這些策略以僅報告(Report-only)狀態建立,如果你不處理,微軟會在推出後不少於 30 天啟用,並提前約兩星期通知。請決定採用微軟的還是自己的,不要留下兩條重疊又沒有記錄的策略。
分階段推行
- 第 0 週: 建好緊急存取帳戶並測試可登入,寫好服務台應對指引和用戶說明。
- 第 1 週: 只做管理員。另建一條策略,對象選 Directory roles 而不是 All users,排除項相同(CA002 的步驟見條件式存取基礎策略),並確認每位管理員都已註冊。
- 第 2 週: 試行組,10 至 20 人,來自不同部門,配合註冊提醒。僅報告模式不會提示任何人註冊,註冊要靠提醒或正式啟用。
- 第 3、4 週: 其餘員工按部門分批,每批第一天早上服務台要有人候命。
- 最後: 訪客和服務帳戶。凡是用用戶帳戶充當服務帳戶的,盡量改用工作負載身份識別(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),因為微軟說明驗證方法活動數據需要 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。微軟提示該報告最多可能滯後 36 小時,而且已刪除和已停用的用戶不會列出。
常見錯誤
- 同時開安全預設值和條件式存取。 先停用安全預設值。
- 沒有緊急存取帳戶。 一條寫錯的策略就能把所有管理員鎖在門外。建立兩個帳戶,並從會封鎖或限制登入的策略中排除。
- 另外再開每位用戶 MFA(per-user MFA)。 微軟已不建議 per-user MFA。在安全預設值或條件式存取下,用戶狀態顯示 Disabled 是正常的。
- 忘了舊式驗證。 使用 IMAP、POP3 或 SMTP 基本驗證的舊郵件程式和掃描器無法做 MFA,切換前先在登入記錄中找出來。
- 跳過僅報告模式。 不看報告結果,就不知道誰會受影響。
- 以為首次登入成功就完事。 未註冊的用戶遲早變成工單。每星期處理未註冊名單。
如何確認生效
- 打開 Entra ID > Monitoring & health > Sign-in logs,點開試行用戶的一次互動式登入。
- 查看 Conditional Access 分頁(策略仍在僅報告時查看 Report-only 分頁),確認套用了哪條策略、結果是否成功。
- 用測試用戶在私密視窗登入,應當被要求註冊或核准。
- 如果租戶有 P1 或 P2,每星期重新執行一次 PowerShell 匯出,CSV 應逐週縮小直至為空。
- 用緊急存取帳戶登入一次,證明它仍然可用,並記錄日期。
- 打開 Microsoft Secure Score(security.microsoft.com/securescore)。微軟說明,開啟安全預設值後,「所有用戶 MFA」「管理員角色 MFA」「封鎖舊式驗證」這幾項建議動作會得到全部分數。
FAQ
如何在 Outlook 為電郵開啟雙重驗證?
不是在 Outlook 內開啟。MFA 作用於 Microsoft 365 帳戶,所以只要開啟安全預設值或條件式存取策略,Outlook 登入時就會要求第二步驗證。使用基本驗證的舊版程式會失效,需要更換。
Microsoft 365 的 MFA 如何運作?
用戶輸入密碼後,微軟會要求第二重證明,例如在 Microsoft Authenticator 核准通知。在安全預設值下,何時提示由微軟根據位置、設備、角色和作業等因素決定。
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月報
中國合規動態、網絡安全預警及亞太IT實踐指南,每月一期。
不發垃圾郵件,隨時可取消訂閱。