在 Azure Active Directory B2C 中啟用多重要素驗證 | Microsoft Docs

開始之前,請使用 [選擇原則類型 選取器] 來選擇您要設定的原則類型。 Azure Active Directory B2C 提供兩種方法來定義使用者如何與您的應用程式互動:透過預先 定義的使用者流程 ,或透過完全可設定 的自定義原則。 本文中每個方法所需的步驟都不同。

Azure Active Directory B2C (Azure AD B2C) 直接與 Microsoft Entra 多重要素驗證 整合,讓您可以新增第二層安全性,以在應用程式中註冊和登入體驗。 您可以啟用多重要素驗證,而不需撰寫單行程序代碼。 如果您已建立註冊和登入使用者流程,您仍然可以啟用多重要素驗證。

這項功能可協助應用程式處理下列案例:

  • 您不需要多重要素驗證才能存取一個應用程式,但確實需要它才能存取另一個應用程式。 例如,客戶可以使用社交或本機帳戶登入汽車保險應用程式,但必須先驗證電話號碼,才能存取相同目錄中註冊的家庭保險申請。
  • 您不需要多重要素驗證才能一般存取應用程式,但您確實需要它來存取其中敏感性部分。 例如,客戶可以使用社交或本機帳戶登入銀行應用程式,並檢查賬戶餘額,但必須在嘗試電匯之前先確認電話號碼。

必要條件

驗證方法

使用 條件式存取 使用者,根據您可以以系統管理員身分做出的設定決策,MFA 可能會或可能不會受到挑戰。 多重要素驗證的方法如下:

  • 電子郵件 - 登入期間,會傳送包含一次性密碼 (OTP) 的驗證電子郵件給使用者。 使用者提供電子郵件中傳送的 OTP 代碼。
  • SMS 或電話 - 在第一次註冊或登入期間,系統會要求使用者提供並驗證電話號碼。 在後續登入期間,系統會提示用戶選取 [傳送代碼 ] 或 [撥打我 電話 MFA] 選項。 視使用者選擇而定,會傳送簡訊,或撥打電話給已驗證的電話號碼來識別使用者。 使用者會提供透過簡訊傳送的 OTP 代碼,或核准來電。
  • 電話 通話 - 的運作方式與SMS或通話選項相同,但只會撥打電話。
  • 僅限 簡訊 - 與簡訊或通話選項相同,但只會傳送簡訊。
  • 驗證器應用程式 - TOTP - 使用者必須在擁有的裝置上安裝支援以時間為基礎的單次密碼 (TOTP ) 驗證的驗證器應用程式,例如 Microsoft Authenticator 應用程式。 在第一次註冊或登入期間,用戶會掃描 QR 代碼,或使用驗證器應用程式手動輸入代碼。 在後續登入期間,使用者輸入出現在驗證器應用程式上的 TOTP 程式代碼。 請參閱 如何設定 Microsoft Authenticator 應用程式

重要

驗證器應用程式 - TOTP 提供比 SMS/電話 強的安全性,且電子郵件最不安全。 SMS/電話 型多重要素驗證會產生與一般 Azure AD B2C MAU 定價模式不同的費用。

設定多重要素驗證

  1. 登入 Azure 入口網站

  2. 如果您有多個租使用者的存取權,請選取頂端功能表中的 [設定] 圖示,從 [目錄 + 訂用帳戶] 功能表切換至您的 Azure AD B2C 租使用者。

  3. 在左側功能表中,選取 [Azure AD B2C]。 或者,選取 [所有服務 ],然後搜尋並選取 [Azure AD B2C]。

  4. 選取 [ 使用者流程]。

  5. 選取您想要啟用 MFA 的使用者流程。 例如, B2C_1_signinsignup

  6. 選取 [屬性] 。

  7. 在 [ 多重要素驗證 ] 區段中,選取所需的 方法類型。 然後在 [MFA 強制]選取選項:

    • 關閉 - 在登入期間永遠不會強制執行 MFA,而且不會在註冊或登入期間提示用戶註冊 MFA。

    • 永遠開啟 - 不論條件式存取設定為何,一律需要 MFA。 註冊期間,系統會提示用戶註冊 MFA。 在登入期間,如果使用者尚未在 MFA 中註冊,系統會提示他們註冊。

    • 條件 式 - 在註冊和登入期間,系統會提示用戶註冊 MFA(新使用者和未在 MFA 中註冊的現有使用者)。 在登入期間,只有在作用中的條件式存取原則評估需要時,才會強制執行 MFA:

      • 如果結果是沒有風險的 MFA 挑戰,則會強制執行 MFA。 如果使用者尚未在 MFA 中註冊,系統會提示他們註冊。
      • 如果結果是由於風險 而造成 MFA 挑戰,且 使用者未在 MFA 中註冊,則會封鎖登入。

    注意

    • 隨著 Azure AD B2C 中條件式存取的正式運作,用戶現在會在註冊期間提示在 MFA 方法中註冊。 您在正式運作前建立的任何註冊使用者流程都不會自動反映這個新行為,但您可以藉由建立新的使用者流程來包含該行為。
    • 如果您選取 [ 條件式],您也需要 將條件式存取新增至使用者流程,並指定您想要套用原則的應用程式。
    • 註冊使用者流程預設會停用多重要素驗證。 您可以使用電話註冊在使用者流程中啟用 MFA,但因為電話號碼會作為主要標識碼使用,因此電子郵件一次性密碼是唯一可用於第二個驗證要素的選項。
  8. 選取 [儲存]。 此使用者流程現在已啟用 MFA。

您可以使用執行 使用者流程 來驗證體驗。 確認下列案例:

在多重要素驗證步驟發生之前,會在租使用者中建立客戶帳戶。 在步驟中,系統會要求客戶提供電話號碼並加以驗證。 如果驗證成功,電話號碼會附加至帳戶以供稍後使用。 即使客戶取消或卸除,客戶仍可在啟用多重要素驗證的下一次登入期間再次驗證電話號碼。

若要啟用多重要素驗證,請從 GitHub 取得自定義原則入門套件,如下所示:

  • 從 下載 .zip 檔案或複製存放庫https://github.com/Azure-Samples/active-directory-b2c-custom-policy-starterpack,然後使用您的 Azure AD B2C 租用戶名稱更新 SocialAndLocalAccountsWithMFA 入門套件中的 XML 檔案。 SocialAndLocalAccountsWithMFA 會啟用社交和本機登入選項,以及多重要素驗證選項,但 Authenticator 應用程式 - TOTP 選項除外。
  • 若要支援 Authenticator 應用程式 - TOTP MFA 選項,請從 https://github.com/azure-ad-b2c/samples/tree/master/policies/totp下載自定義原則檔案,然後使用您的 Azure AD B2C 租使用者名稱更新 XML 檔案。 請務必包含 TrustFrameworkExtensions.xmlSocialAndLocalAccounts 入門套件中的 TrustFrameworkLocalization.xmlTrustFrameworkBase.xml XML 檔案。
  • 將 [版面設定] 更新為版本 2.1.14。 如需詳細資訊,請參閱 選取版面配置

使用驗證程式在 TOTP 中註冊使用者(適用於終端使用者)

當 Azure AD B2C 應用程式使用 TOTP 選項啟用 MFA 時,用戶必須使用驗證器應用程式來產生 TOTP 程式代碼。 使用者可以使用 Microsoft Authenticator 應用程式 或任何其他支援 TOTP 驗證的驗證器應用程式。 Azure AD B2C 系統管理員必須建議終端使用者使用下列步驟來設定 Microsoft Authenticator 應用程式:

  1. 在您的 Android 或 iOS 行動裝置上下載並安裝 Microsoft Authenticator 應用程式
  2. 開啟應用程式,要求您使用 TOTP for MFA,例如 Contoso webapp,然後輸入必要的資訊來登入或註冊。
  3. 如果您使用驗證器應用程式掃描 QR 代碼來註冊您的帳戶,請在手機中開啟 Microsoft Authenticator 應用程式,然後在右上角選取 3 點 功能表圖示(適用於 Android)或 + 功能表圖示(適用於 IOS)。
  4. 選取 [+ 新增帳戶]。
  5. 選取 [其他帳戶](Google、Facebook 等),然後掃描應用程式中顯示的 QR 代碼(例如 Contoso webapp),以註冊您的帳戶。 如果您無法掃描 QR 代碼,您可以手動新增帳戶:
    1. 在手機上的 Microsoft Authenticator 應用程式中,選取 [ 或手動輸入程式代碼]。
    2. 在應用程式中(例如 Contoso webapp),選取 [ 仍然發生問題?]。 這會顯示 [帳戶名稱 ] 和 [密碼]。
    3. 在您的 Microsoft Authenticator 應用程式中輸入 [帳戶名稱和密碼],然後選取 [完成]。
  6. 在應用程式中(例如 Contoso webapp),選取 [ 繼續]。
  7. [輸入您的程序代碼] 中,輸入出現在 Microsoft Authenticator 應用程式中的程序代碼。
  8. 選取 [驗證]
  9. 在後續登入應用程式期間,輸入出現在 Microsoft Authenticator 應用程式中的程式代碼。

瞭解 OATH 軟體令牌

刪除使用者的 TOTP 驗證器註冊 (適用於系統管理員)

在 Azure AD B2C 中,您可以刪除使用者的 TOTP 驗證器應用程式註冊。 然後,用戶必須重新註冊其帳戶,才能再次使用 TOTP 驗證。 若要刪除使用者的 TOTP 註冊,您可以使用 Azure 入口網站Microsoft Graph API

注意

  • 從 Azure AD B2C 刪除使用者的 TOTP 驗證器應用程式註冊並不會移除 TOTP 驗證器應用程式中的用戶帳戶。 系統管理員必須指示使用者從TOTP驗證器應用程式手動刪除其帳戶,然後再嘗試再次註冊。
  • 如果使用者不小心從 TOTP 驗證器應用程式刪除其帳戶,他們必須通知系統管理員或應用程式擁有者,他們可以從 Azure AD B2C 刪除使用者的 TOTP 驗證器註冊,以便使用者重新註冊。

使用 Azure 入口網站 刪除 TOTP 驗證器應用程式註冊

  1. 登入 Azure 入口網站
  2. 如果您有多個租使用者的存取權,請選取頂端功能表中的 設定 圖示,從 [目錄 + 訂用帳戶] 功能表切換至您的 Azure AD B2C 租使用者。
  3. 在左側功能表中,選取 [ 使用者]。
  4. 搜尋並選取您要刪除 TOTP 驗證器應用程式註冊的使用者。
  5. 在左側功能表中,選取 [ 驗證方法 ]。
  6. 在 [可使用的驗證方法 ] 下 ,尋找 [軟體 OATH 權杖 ],然後選取其旁邊的省略號功能表。 如果您沒有看到這個介面,請選取 [ 切換至新的使用者驗證方法體驗] 選項!按一下這裡立即使用它」 ,切換至新的驗證方法體驗。
  7. 選取 [刪除],然後選取 [是] 予以確認。

User authentication methods

使用 Microsoft Graph API 刪除 TOTP 驗證器應用程式註冊

瞭解如何 使用 Microsoft Graph API 刪除使用者的軟體 OATH 權杖驗證方法