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