建立註冊和登入使用者流程
適用於: 員工租用戶 外部租用戶 (深入了解)
提示
本文適用於外部租用戶中的使用者流程。 如需員工租用戶的相關資訊,請參閱將自助式註冊使用者流程新增至應用程式。
您可以藉由將使用者流程新增至您的應用程式,來為您的客戶建立簡單的註冊和登入體驗。 使用者流程會定義客戶遵循的一系列註冊步驟,以及他們可以使用的登入方法 (例如來自 Google 或 Facebook 的電子郵件和密碼、一次性密碼或社交帳戶)。 您也可以在註冊期間從一系列內建使用者屬性中進行選取,或新增您自己的自訂屬性,向客戶收集資訊。
如果您有多個應用程式想要提供給客戶,可以建立多個使用者流程。 或者,您可以針對許多應用程式使用相同的使用者流程。 不過,應用程式只能有一個使用者流程。
必要條件
- Microsoft Entra 外部租用戶:開始之前,請建立 Microsoft Entra 外部租用戶。 您可以設定免費試用,或在 Microsoft Entra ID 中建立新的外部租用戶。
- 啟用電子郵件一次性密碼 (選擇性):如果您想要讓客戶在每次登入時使用其電子郵件位址和一次性密碼,請確定在租用戶層級啟用電子郵件一次性密碼 (在 Microsoft Entra 系統管理中心,瀏覽至 [外部身分識別]>[所有識別提供者]>[電子郵件一次性密碼])。
- 定義自訂屬性 (選擇性):使用者屬性是在自助式註冊期間向使用者收集的值。 Microsoft Entra ID 隨附一組內建屬性,但您可以定義在註冊期間要收集的自訂屬性。 事先定義自訂屬性,以便在您設定使用者流程時使用。 或者,您可以稍後加以建立並新增。
- 定義識別提供者 (選擇性):您可以事先向 Google 或 Facebook 設定同盟,然後在建立使用者流程時,選取這些同盟做為登入選項。
建立和自訂使用者流程
請遵循下列步驟來建立使用者流程,以供客戶用來登入或註冊應用程式。 這些步驟描述了如何新增新使用者流程、選取您想要收集的屬性,以及變更註冊頁面上屬性的順序。
新增新使用者流程
如果您有多個租用戶的存取權,請使用頂端功能表中的 [設定] 圖示 ,從 [目錄 + 訂用帳戶] 功能表切換至您的外部租用戶。
瀏覽至 [身分識別]>[外部身分識別]>[使用者流程]。
選取 [新增使用者流程]。
在 [建立] 頁面上,輸入使用者流程的 [名稱] (例如:"SignUpSignIn")。
在 [識別提供者] 底下,選取 [電子郵件帳戶] 核取方塊,然後選取下列其中一個選項:
電子郵件及密碼: 可讓新使用者使用電子郵件地址作為登入名稱和密碼作為其第一個要素驗證方法來註冊和登入。 您也可以在登入頁面上設定顯示、隱藏或自訂自助式密碼重設連結的選項 (深入了解)。
電子郵件一次性密碼:可讓新使用者使用電子郵件地址做為登入名稱和電子郵件一次性密碼做為其第一個要素驗證方法來註冊和登入。
注意
Microsoft Entra ID 註冊選項無法使用,因為雖然客戶可以使用另一個 Microsoft Entra 組織提供的電子郵件來註冊本機帳戶,但並不會使用 Microsoft Entra 同盟來加以驗證。 只有在您向 Google 和 Facebook 設定同盟之後,才可以使用。 深入了解驗證方法和識別提供者。
在 [使用者屬性] 底下,選擇您在註冊期間要向使用者收集的屬性。
選取 [顯示更多] 以從完整的屬性清單中選擇,包括職稱、顯示名稱和郵遞區號。
此清單也包含任何 您定義的自訂屬性。 選取您要在註冊期間從使用者收集之每個屬性旁的核取方塊
選取 [確定]。
選取 [建立] 以建立使用者流程。
在註冊和登入使用者流程中停用註冊
如果您希望客戶使用者只登入而不註冊,則可以使用 Microsoft Graph 中的 Update authenticationEventsFlow API 來停用使用者流程中的註冊體驗,並將 onInteractiveAuthFlowStart 屬性 >isSignUpAllowed 屬性更新為 false
。 您必須知道您想要停用註冊的使用者流程識別碼。 您無法從 Microsoft Entra 系統管理中心讀取使用者流程識別碼,但如果您知道與其相關聯的應用程式,則可透過 Microsoft Graph API 加以擷取。
讀取與使用者流程相關聯的應用程式識別碼:
- 瀏覽至 [身分識別] > [外部身分識別] > [使用者流程]。
- 從清單中,選取您的使用者流程。
- 在左側功能表的 [使用] 底下,選取 [應用程式]。
- 從清單的 [應用程式 (用戶端) 識別碼] 資料行底下,複製 [應用程式 (用戶端) 識別碼]。
識別您想要停用註冊的使用者流程識別碼。 若要這樣做,請列出與特定應用程式相關聯的使用者流程。 這是 Microsoft Graph API,要求您知道您在先前步驟中取得的應用程式識別碼。
更新您的使用者流程以停用註冊。
範例:
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。
下一步
意見反映
https://aka.ms/ContentUserFeedback。
即將推出:我們會在 2024 年淘汰 GitHub 問題,並以全新的意見反應系統取代並作為內容意見反應的渠道。 如需更多資訊,請參閱:提交及檢視以下的意見反映: