共用方式為


使用 Azure Active Directory B2C 設定 Facebook 帳戶的註冊和登入功能

這很重要

自 2025 年 5 月 1 日起,Azure AD B2C 將不再可供新客戶購買。 在我們的常見問題中深入瞭解

開始之前,請使用此頁面頂端的 [選擇原則類型] 選取器,選擇您要設定的原則類型。 Azure Active Directory B2C 提供兩種方法來定義使用者如何與您的應用程式互動:透過預先定義的使用者流程,或透過完全可設定的自訂原則。 此文章中所需的步驟隨各方法而異。

備註

在 Azure Active Directory B2C 中, 自定義原則 的設計主要是為了解決複雜的案例。 在大部分情況下,我們建議您使用內 建的使用者流程。 如果您尚未這麼做,請了解開始使用 Active Directory B2C 中的自定義原則入門套件。

先決條件

建立 Facebook 應用程式

若要在 Azure Active Directory B2C (Azure AD B2C) 中為具有 Facebook 帳戶的使用者啟用登入,您必須在 Facebook 應用程式儀錶板中建立應用程式。 如需詳細資訊,請參閱應用程式開發

如果您還沒有 Facebook 帳戶,請在 https://www.facebook.com 註冊。 當您使用 Facebook 帳戶註冊或登入之後,請啟動 Facebook 開發人員帳戶註冊程式。 如需詳細資訊,請參閱註冊為 Facebook 開發人員

  1. 請以您的 Facebook 開發人員帳戶認證登入 Facebook for developers (開發人員專用的 Facebook)
  2. 選取建立應用程式
  3. 針對 [ 選取應用程式類型],選取 [ 取用者],然後選取 [ 下一步]。
  4. 輸入 應用程式顯示名稱和 有效的 應用程式聯繫人電子郵件
  5. 選取建立應用程式。 此步驟可能需要您接受 Facebook 平台策略並完成連線安全性檢查。
  6. 選取設定>基本
    1. 複製 [應用程式識別碼] 的值。
    2. 選取 [顯示],並複製 [應用程式祕密] 的值。 您會使用這兩個值將 Facebook 設定為您租用戶中的識別提供者。 應用程式密碼是重要的安全性認證。
    3. 輸入隱私權原則 URL 的 URL,如 https://www.contoso.com/privacy。 原則 URL 是您需維護以提供應用程式隱私權資訊的網頁。
    4. 輸入 服務條款 URL的 url,例如 https://www.contoso.com/tos。 原則 URL 是您需維護以提供應用程式條款及條件的網頁。
    5. 輸入 [使用者資料刪除] 的 URL,例如 https://www.contoso.com/delete_my_data。 使用者資料刪除 URL 是您維護的頁面,可讓使用者要求刪除其資料。
    6. 選擇 類別,例如 Business and Pages。 Facebook 需要此值,但不適用於 Azure AD B2C。
  7. 在頁面底部,選取 [新增平台],然後選取 [網站]
  8. 網站 URL 中,輸入您網站的位址 (例如 https://contoso.com)。
  9. 選擇 [儲存變更]
  10. 從功能表中,選取 [產品] 旁的加號[新增產品] 連結。 在 [將產品新增至您的應用程式] 底下,選取 [Facebook 登入] 底下的 [設定]。
  11. 從功能表中,選取 [Facebook 登入],選取 [ 設定]。
  12. [有效的 OAuth 重新導向 URI] 中,輸入 https://your-tenant-name.b2clogin.com/your-tenant-name.onmicrosoft.com/oauth2/authresp。 如果您使用 自訂網域,請輸入 https://your-domain-name/your-tenant-id.onmicrosoft.com/oauth2/authresp。 將 your-tenant-id 替換為租戶的識別碼,並將 your-domain-name 替換為您的自訂網域。
  13. 頁面底部的 [儲存變更]。
  14. 若要讓您的 Facebook 應用程式可供 Azure AD B2C 使用,請選取頁面右上方的 [狀態] 選取器,並 開啟它以 將應用程式設為公用,然後選取 [ 切換模式]。 此時,[狀態] 應會從 [開發] 變更為 [可用]。 如需詳細資訊,請參閱 Facebook 應用程式開發

將 Facebook 設定為識別提供者

  1. 使用至少具有外部識別提供者系統管理員許可權的帳戶登入 Azure 入口網站。
    1. 如果您有多個租用戶的存取權,請使用頂端功能表中的 [設定] 圖示,從 [目錄 + 訂用帳戶] 功能表切換至您的 Azure AD B2C 租用戶。
  2. 選擇 Azure 入口網站左上角 的 [所有服務 ],搜尋並選取 [Azure AD B2C]。
  3. 選取 [識別提供者],然後選取 [Facebook]。
  4. 輸入名稱。 例如,Facebook
  5. 在 [用戶端識別碼] 中,輸入稍早所建立 Facebook 應用程式的應用程式識別碼。
  6. 在 [用戶端密碼] 中,輸入您記下的應用程式祕密。
  7. 選取 [儲存]。

將 Facebook 識別提供者新增至使用者流程

此時,Facebook 身分識別提供者已設定,但尚未顯示在任何登入頁面上。 若要將 Facebook 識別提供者新增至使用者流程:

  1. 在您的 Azure AD B2C 租戶中,選取 使用者流程
  2. 按一下您想要加上Facebook身分識別提供者的使用者流程。
  3. [社交識別提供者] 底下,選取 [Facebook]。
  4. 選取 [儲存]。
  5. 若要測試您的原則,請選取 [ 執行使用者流程]。
  6. 針對 [應用程式],選取您先前註冊的名為 testapp1 的Web應用程式。 Reply URL 應顯示 https://jwt.ms
  7. 選取 [ 執行使用者流程 ] 按鈕。
  8. 從 [註冊或登入] 頁面中,選取 [Facebook ] 以使用Facebook帳戶登入。

如果登入程式成功,您的瀏覽器會重新導向至 https://jwt.ms,以顯示 Azure AD B2C 所傳回令牌的內容。

建立原則金鑰

您必須儲存您先前在 Azure AD B2C 租用戶中記錄的應用程式秘密。

  1. 登入 Azure 入口網站
  2. 如果您有多個租用戶的存取權,請使用頂端功能表中的 [設定] 圖示,從 [目錄 + 訂用帳戶] 功能表切換至您的 Azure AD B2C 租用戶。
  3. 選擇 Azure 入口網站左上角 的 [所有服務 ],然後搜尋並選取 [Azure AD B2C]。
  4. 在 [概觀] 頁面上,選取 [ 身分識別體驗架構]。
  5. 選取 [原則密鑰 ],然後選取 [ 新增]。
  6. 針對 [選項],選擇 Manual
  7. 輸入政策金鑰的名稱。 例如: FacebookSecret 。 前置詞 B2C_1A_ 會自動新增至金鑰的名稱。
  8. 在 [ 秘密] 中,輸入您先前記錄的應用程式秘密。
  9. 針對 [ 金鑰使用方式],選取 Signature
  10. 點擊 建立

將 Facebook 帳戶設定為識別提供者

  1. SocialAndLocalAccounts/TrustFrameworkExtensions.xml 檔案中,將 client_id 的值取代為 Facebook 應用程式識別碼:

    <TechnicalProfile Id="Facebook-OAUTH">
      <Metadata>
      <!--Replace the value of client_id in this technical profile with the Facebook app ID"-->
        <Item Key="client_id">00000000000000</Item>
    

上傳和測試政策

更新啟動您所建立的使用者旅程的依賴方 (RP) 檔案。

  1. TrustFrameworkExtensions.xml 檔案上傳至您的租戶。
  2. [自定義原則] 底下,選取 B2C_1A_signup_signin
  3. 針對 [選取應用程式],選取您先前註冊的名為 testapp1 的Web應用程式。 Reply URL 應顯示 https://jwt.ms
  4. 選取 [ 立即執行] 按鈕。
  5. 從 [註冊或登入] 頁面中,選取 [Facebook ] 以使用Facebook帳戶登入。

如果登入程式成功,您的瀏覽器會重新導向至 https://jwt.ms,以顯示 Azure AD B2C 所傳回令牌的內容。

後續步驟