為客戶建立註冊和登入使用者流程

您可以藉由將使用者流程新增至您的應用程式,來為您的客戶建立簡單的註冊和登入體驗。 使用者流程會定義客戶遵循的一系列註冊步驟,以及他們可以使用的登入方法 (例如來自 GoogleFacebook 的電子郵件和密碼、一次性密碼或社交帳戶)。 您也可以在註冊期間從一系列內建使用者屬性中選取,或新增您自己的自定義屬性,從客戶收集資訊。

如果您有多個想要提供給客戶的應用程式,您可以建立多個使用者流程。 或者,您可以針對許多應用程式使用相同的使用者流程。 不過,應用程式只能有一個使用者流程。

提示

立即試用

若要試用這項功能,請移至 Woodgrove Groceries 示範並啟動「在線零售」使用案例。

必要條件

  • Microsoft Entra 外部租用戶:開始之前,請先建立 Microsoft Entra 外部租使用者。 您可以設定 免費試用,或在 Microsoft Entra ID 中建立新的外部租使用者。
  • 啟用單次密碼(選擇性):如果您希望客戶每次登入時使用其電子郵件位址和一次性密碼,請確定在租用戶層級啟用電子郵件一次性密碼(在 Microsoft Entra 系統管理中心中,流覽至外部身分識別>所有識別提供者>電子郵件一次性密碼)。
  • 已定義的自定義屬性(選擇性):用戶屬性是在自助式註冊期間從使用者收集的值。 Microsoft Entra ID 隨附一組內建的屬性,但您可以 定義在註冊期間要收集的自定義屬性。 事先定義自訂屬性,以便在您設定使用者流程時使用。 或者,您可以稍後建立並新增它們。
  • 已定義的識別提供者(選擇性):您可以事先設定與GoogleFacebook的同盟,然後在建立使用者流程時選取它們作為登入選項。

建立和自訂使用者流程

請遵循下列步驟來建立客戶可用來登入或註冊應用程式的使用者流程。 這些步驟說明如何新增使用者流程、選取您想要收集的屬性,以及變更註冊頁面上屬性的順序。

新增新使用者流程

  1. 登入 Microsoft Entra 系統管理中心

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

  3. 流覽至 [身分>識別外部身分>識別使用者流程]。

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

    新使用者流程選項的螢幕快照。

  5. [建立] 頁面上,輸入使用者流程的 [名稱] (例如:"SignUpSignIn")。

  6. [識別提供者] 底下,選取 [電子郵件帳戶] 核取方塊,然後選取下列其中一個選項:

    • 電子郵件及密碼: 可讓新使用者使用電子郵件地址作為登入名稱和密碼作為其第一個要素驗證方法來註冊和登入。 您也可以在登入頁面上設定顯示、隱藏或自訂自助式密碼重設連結的選項 (深入了解)。

    • 電子郵件一次性密碼:可讓新使用者使用電子郵件地址作為登入名稱和電子郵件一次性密碼作為其第一因素驗證方法來註冊和登入。

    注意

    無法使用 Microsoft Entra ID 註冊選項,因為雖然客戶可以使用來自另一個 Microsoft Entra 組織的電子郵件註冊本機帳戶,但 Microsoft Entra 同盟不會用來驗證它們。 只有在您與他們設定同盟之後,GoogleFacebook 才可供使用。 深入了解驗證方法和識別提供者

    [建立使用者流程] 頁面上的 [識別提供者] 選項螢幕快照。

  7. [使用者屬性] 底下,選擇您在註冊期間要向使用者收集的屬性。

    [建立使用者流程] 頁面上使用者屬性選項的螢幕快照。

  8. 選取 [顯示更多] 以從完整的屬性清單中選擇,包括職稱顯示名稱郵遞區號

    此清單也包含任何 您定義的自訂屬性。 選取您要在註冊期間從使用者收集之每個屬性旁的核取方塊

    選取 [顯示更多] 之後使用者屬性窗格的螢幕快照。

  9. 選取 [確定]。

  10. 選取 [建立] 以建立使用者流程。

停用註冊和登入使用者流程中的註冊

如果您希望客戶使用者只登入且不註冊,則可以使用 Microsoft Graph 中的 Update authenticationEventsFlow API 停用使用者流程中的註冊體驗,並將 onInteractiveAuthFlowStart 屬性 >isSignUpAllowed 屬性更新false。 您必須知道您想要停用其註冊的使用者流程識別碼。 您無法從 Microsoft Entra 系統管理中心讀取使用者流程識別碼,但如果您知道與其相關聯的應用程式,可以透過 Microsoft Graph API 擷取它。

  1. 讀取與使用者流程相關聯的應用程式識別碼:

    1. 流覽至 [ 身分 > 識別外部身分 > 識別使用者流程]。
    2. 從清單中,選取您的使用者流程。
    3. 在左側功能表中的 [使用] 底下,選取 [應用程式]。
    4. 從清單的 [應用程式(用戶端) 識別符] 資料行底下,複製 [應用程式] [用戶端] 識別碼。
  2. 識別您要停用其註冊的使用者流程標識碼。 若要這樣做, 請列出與特定應用程式相關聯的使用者流程。 這是 Microsoft Graph API,要求您知道您從上一個步驟取得的應用程式識別碼。

  3. 更新您的使用者流程 以停用註冊。

    範例:

    PATCH https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-id} 
    

    要求本文

        {    
            "@odata.type": "#microsoft.graph.externalUsersSelfServiceSignUpEventsFlow",    
            "onInteractiveAuthFlowStart": {    
                "@odata.type": "#microsoft.graph.onInteractiveAuthFlowStartExternalUsersSelfServiceSignUp",    
                "isSignUpAllowed": "false"    
          }    
        }
    

    將取代 {user-flow-id} 為您在上一個步驟中取得的使用者流程識別碼。 請注意,參數 isSignUpAllowed 設定為 false。 若要重新啟用註冊,請呼叫 Microsoft Graph API 端點,但將 isSignUpAllowed 參數設定為 true

下一步