啟用社交識別提供者登入
練習 - 啟用社交識別提供者登入
透過與社交識別提供者建立同盟,您可以允許客戶使用自己的社交帳戶 (如 Facebook 或 Google) 登入您的應用程式。 此示範展示了如何將 Facebook 新增為應用程式的登入選項之一。 在登入頁面上,客戶可以使用 Facebook 登入 Microsoft Entra ID。 本教學課程中的步驟也適用於其他識別提供者,如 Google。
注意
您至少需要外部識別提供者系統管理員目錄角色,才能啟用社交識別提供者登入。
此為特殊權限角色。 請參閱使用特殊權限角色的最佳做法。
想提供意見反應? 請讓我們知道您的概念證明專案進行狀況如何。 我們很樂意收到您的寶貴意見。
若要將 Facebook 新增為識別提供者,您首先需要在 Facebook 中建立應用程式。 然後,在 Microsoft Entra 外部 ID 中設定同盟。 在 Facebook 中建立應用程式後,登入 Microsoft Entra 系統管理中心並瀏覽至 [外部身分識別]>[所有識別提供者]。 然後,選取 Facebook 旁邊的 [設定]。
對於用戶端識別碼,請輸入您之前建立的 Facebook 應用程式的用戶端識別碼。 對於用戶端密碼,請輸入您記錄的用戶端密碼。 然後選取 [儲存]。
此時,Facebook 身分識別提供者已在您的 Microsoft Entra ID 中設定,但尚未在任何登入頁面中提供。 您需要將 Facebook 識別提供者新增至使用者流程中。 在您的外部租用戶中,瀏覽至 [身分識別]>[外部身分識別]>[使用者流程]。 然後,選取您想要在其中新增 Facebook 識別提供者的使用者流程。
在 [設定] 下,選取 [識別提供者]。 在 [其他識別提供者] 底下,選取 [Facebook]。 在頁面上方選取 [儲存]。
做得好!您已成功將 Facebook 識別提供者新增至租用戶,然後在使用者流程中啟用了 Facebook 登入。
1.註冊 Facebook
若要將 Facebook 新增為識別提供者,您首先需要在 Facebook 識別提供者中建立應用程式。 然後,使用以下 Microsoft Graph 在您的 Microsoft Entra 外部 ID 租用戶中註冊識別提供者。 將 {Facebook app ID} 取代為您之前建立的 Facebook 應用程式的應用程式識別碼。 將 {Facebook app secret} 取代為您記錄的應用程式祕密。
POST https://graph.microsoft.com/beta/identityProviders
{
"type": "Facebook",
"name": "Facebook",
"clientId": "{Facebook app ID}",
"clientSecret": "{Facebook app secret}"
}
在某些租用戶中,可能是:
{
"@odata.type": "#microsoft.graph.socialIdentityProvider",
"displayName": "Facebook",
"identityProviderType": "Facebook",
"clientId": "{Facebook app ID}",
"clientSecret": "{Facebook app secret}"
}
1.1 將 Facebook 識別提供者新增至使用者流程
在將 Facebook 識別提供者註冊至 Microsoft Entra 外部 ID 租用戶後,您可以將其新增至您的使用者流程中。 在以下 Microsoft Graph 中,將 {user-flow-ID} 取代為您的使用者流程識別碼。
POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}/microsoft.graph.externalUsersSelfServiceSignUpEventsFlow/onAuthenticationMethodLoadStart/microsoft.graph.onAuthenticationMethodLoadStartExternalUsersSelfServiceSignUp/identityProviders/$ref
{
"@odata.id": "https://graph.microsoft.com/beta/identityProviders/Facebook-OAUTH"
}
2.註冊 Google
若要將 Google 新增為識別提供者,您首先需要在 Google 識別提供者中建立應用程式。 然後,在您的 Microsoft Entra 外部 ID 租用戶中註冊識別提供者。 將 {Google app ID} 取代為您之前建立的 Google 應用程式的應用程式識別碼。 將 {Google app secret} 取代為您記錄的應用程式祕密。
POST https://graph.microsoft.com/beta/identityProviders
{
"type": "Google",
"name": "Google",
"clientId": "{Google app ID}",
"clientSecret": "{Google app secret}"
}
在某些租用戶中,可能是:
POST https://graph.microsoft.com/beta/identityProviders
{
"@odata.type": "#microsoft.graph.socialIdentityProvider",
"displayName": "Google",
"identityProviderType": "Google",
"clientId": "{Google app ID}",
"clientSecret": "{Google app secret}"
}
2.1 將 Google 識別提供者新增至使用者流程
在將 Google 識別提供者註冊至 Microsoft Entra 外部 ID 租用戶後,您可以將其新增至您的使用者流程中。 在以下 Microsoft Graph 要求中,將 {user-flow-ID} 取代為您的使用者流程識別碼。
POST https://graph.microsoft.com/beta/identity/authenticationEventsFlows/{user-flow-ID}/microsoft.graph.externalUsersSelfServiceSignUpEventsFlow/onAuthenticationMethodLoadStart/microsoft.graph.onAuthenticationMethodLoadStartExternalUsersSelfServiceSignUp/identityProviders/$ref
{
"@odata.id": "https://graph.microsoft.com/beta/identityProviders/Google-OAUTH"
}