如何在 Azure API 管理中使用 Azure Active Directory B2C 來授權開發人員帳戶

適用於:開發人員 |基本 |基本 v2 |標準 |標準 v2 |進階版

Azure Active Directory B2C 是適用於取用者導向 Web 與行動應用程式的雲端身分識別管理解決方案。 您可以使用它來管理 API 管理開發人員入口網站的存取。

在本教學課程中,您將了解與 Azure Active Directory B2C 整合所必須在 API 管理服務中進行的設定。

如需保護對開發人員入口網站之存取的選項概觀,請參閱保護對 API 管理開發人員入口網站的存取 \(部分機器翻譯\)。

重要

  • 本文已更新為使用 Microsoft 驗證程式庫 (MSAL) 設定 Azure AD B2C 應用程式的步驟。
  • 如果您先前已使用 Azure AD 驗證程式庫 (ADAL) 針對使用者登入設定了 Azure AD B2C 應用程式,建議您移轉至 MSAL

必要條件

設定註冊和登入使用者流程

在本節中,您將在 Azure Active Directory B2C 租用戶中建立包含註冊與登入原則的使用者流程。 如需詳細步驟,請參閱在 Azure Active Directory B2C 中建立使用者流程和自訂原則

  1. Azure 入口網站中,存取您的 Azure Active Directory B2C 租用戶。
  2. 在 [原則] 之下,選取 [使用者流程]>[+ 新增使用者流程]
  3. 在 [建立使用者流程] 頁面上,選取 [註冊和登入] 使用者流程。 選取 [建議] 版本,然後選取 [建立]
  4. 在 [建立] 頁面上,提供下列資訊:
    1. 輸入使用者流程的唯一名稱。
    2. 在 [識別提供者] 中,選取 [電子郵件註冊]
    3. 在 [使用者屬性和權杖宣告] 中,選取 APIM 開發人員入口網站所需的下列屬性和宣告。
      • 收集屬性:名字、姓氏

      • 傳回宣告:名字、姓氏、電子郵件地址、使用者的 ObjectID

        入口網站中屬性和宣告的螢幕快照

  5. 選取 建立

設定開發人員入口網站的識別提供者

  1. 在個別的 Azure 入口網站索引標籤中,瀏覽至您的 API 管理執行個體。

  2. 在 [開發人員入口網站] 中,選取 [身分識別]>[+ 新增]

  3. 在 [新增識別提供者] 頁面中,選取 [Azure Active Directory B2C]。 選取後,您便能夠輸入其他必要資訊。

    • 在 [用戶端程式庫] 下拉式清單中,選取 [MSAL]
    • 若要新增其他設定,請參閱本文稍後的步驟。
  4. 在 [新增識別提供者] 視窗中,複製 [重新導向 URL]

    入口網站中重新導向 URL 的螢幕快照。

  5. 返回 Azure 入口網站中 Azure Active Directory B2C 租用戶的瀏覽器索引標籤。 選取 [應用程式註冊]>[+ 新增註冊]

  6. 在 [註冊應用程式] 頁面中,輸入您應用程式的註冊資訊。

    • 在 [名稱] 區段中,輸入您選擇的應用程式名稱。
    • 在 [支援的帳戶類型] 區段中,選取 [任何組織目錄中的帳戶 (適用於以使用者流程驗證使用者)]。 如需詳細資訊,請參閱註冊應用程式
    • 在 [重新導向 URI] 中,選取 [單頁應用程式 (SPA)],並貼上您在先前的步驟中儲存的重新導向 URL。
    • 在 [權限] 中,選取 [對 openid 與 offline_access 權限授與管理員同意]
    • 選取 [暫存器] 以建立應用程式。

    在入口網站中註冊新應用程式的螢幕快照。

  7. 在應用程式的 [概觀] 頁面上,尋找 [應用程式 (用戶端) 識別碼],並將此值複製到剪貼簿。

    入口網站中 [概觀] 頁面的螢幕快照。

  8. 切換回 API 管理的 [新增識別提供者] 頁面,然後將識別碼貼到 [用戶端識別碼] 文字方塊。

  9. 切換回 B2C 應用程式註冊。 選取 [憑證和密碼]>[+ 新增用戶端祕密]在入口網站中建立用戶端密碼的螢幕快照。

    • 在 [新增用戶端密碼] 頁面中,輸入 [描述],然後選取 [新增]。
    • 記錄 [值] 並儲存到安全的位置。 離開此頁面後,就「不會再次顯示」此祕密值。
  10. 切換回 API 管理的 [新增識別提供者] 頁面,然後將金鑰貼到 [用戶端密碼] 文字方塊。

  11. 在 [新增識別提供者] 頁面繼續執行操作:

    • 在 [登入租用戶] 中,指定 Azure Active Directory B2C 租用戶的網域名稱。

    • [授權單位] 欄位可讓您控制要使用的 Azure Active Directory B2C 登入 URL。 將此值設定為 <your_b2c_tenant_name>.b2clogin.com

    • 使用在上一個步驟建立的使用者流程名稱,指定 [註冊原則] 與 [登入原則]

    • (選擇性) 提供 [設定檔編輯原則] 和 [密碼重設原則]

      入口網站中 Active Directory B2C 識別提供者設定的螢幕快照。

  12. 指定需要的組態之後,請選取 [新增]

  13. 重新發佈開發人員入口網站,讓 Azure AD B2C 設定生效。 在左側功能表中的開發人員入口網站下,選取 [入口網站概觀]>[發佈]

儲存變更後,開發人員就可以使用 Azure Active Directory B2C 建立新帳戶和登入開發人員入口網站。

移轉至 MSAL

如果您先前已使用 ADAL 為使用者登入設定了 Azure AD B2C 應用程式,您可以使用入口網站將應用程式移轉至 MSAL,並在 API 管理中更新識別提供者。

更新 Azure AD B2C 應用程式以與 MSAL 相容

如需更新 Azure AD B2C 應用程式的步驟,請參閱將重新導向 URI 切換至單頁應用程式類型

更新識別提供者設定

  1. 在 API 管理執行個體的左側功能表中,於 [開發人員入口網站] 底下,選取 [身分識別]
  2. 從清單中選取 [Azure Active Directory B2C]
  3. 在 [用戶端程式庫] 下拉式清單中,選取 [MSAL]
  4. 選取更新
  5. 重新發佈開發人員入口網站

開發人員入口網站 - 新增 Azure Active Directory B2C 帳戶驗證

重要

當您建立或更新 Azure Active Directory B2C 組態設定時,您必須重新發佈開發人員入口網站,變更才會生效。

在開發人員入口網站中,可以透過 [登入按鈕:OAuth] 小工具使用 Azure Active Directory B2C 進行登入。 此小工具已包含在預設開發人員入口網站內容的登入頁面上。

  1. 若要使用 Azure Active Directory B2C 進行登入,請開啟新的瀏覽器視窗並移至開發人員入口網站。 選取 [登入]

  2. 在 [登入] 頁面上,選取 [Azure Active Directory B2C]

    登入開發人員入口網站的螢幕快照。

  3. 系統會將您重新導向至您在上一節中設定的註冊原則。 選擇在 Active Directory B2C 租用戶中使用電子郵件地址進行註冊。

註冊完成後,系統會將您重新導向回到開發人員入口網站。 您現在已登入 API 管理服務執行個體的開發人員入口網站。

登入開發人員入口網站完成

雖然每當新使用者以 Azure Active Directory B2C 登入時,就會自動建立新的帳戶,但您可考慮將相同的小工具新增至註冊頁面。

[註冊表單:OAuth] 小工具代表用來向 OAuth 註冊的表單。

下一步