設定 OpenID Connect 提供者

OpenID Connect 外部識別提供者是遵循 OpenID Connect 規格 的服務。 OpenID Connect 引進了識別碼權杖的概念。 識別碼權杖是一個允許用戶端驗證使用者身份的安全性權杖。 它也會取得使用者的基本設定檔資訊,也稱為宣告

Power Pages 中內建了 OpenID Connect 提供者 Azure AD B2C, Microsoft Entra ID具有多個租用戶的 Microsoft Entra ID。 本文說明如何將其他 OpenID Connect 識別提供者新增至您的 Power Pages 網站。

Power Pages 中支援和不支援的驗證流程

  • 隱含授與
    • 此流程是 Power Pages 網站的預設驗證方法。
  • 授權碼
    • Power Pages 使用 client_secret_post 方法來與身分識別的權杖端點進行通訊。
    • 不支援使用權杖端點進行驗證的 private_key_jwt 方法。
  • 混合式 (受限支援)
    • Power Pages 要求回覆中存在 id_token,因此不支援 response_type = 程式碼權杖
    • Power Pages 中的混合流程遵循與隱含授與相同的流程,並使用 id_token 直接登入使用者。
  • 代碼交換的證明金鑰 (PKCE)
    • 不支援 PKCE 式使用者驗證技術。

注意

變更網站的驗證設定可能需要幾分鐘的時間才能反應在網站上。 若要立即查看變更,請在系統管理中心重新開啟網站。

在 Power Pages 中設定 OpenID Connect 提供者

  1. 在您的 Power Pages 網站中,選取設定>識別提供者

    如果未出現任何識別提供者,請確認在您的網站的一般驗證設定中,有將外部登入設定為開啟

  2. 選取 + 新提供者

  3. 選取登入提供者底下,選取其他

  4. 通訊協定底下,選取 OpenID Connect

  5. 輸入提供者的名稱。

    提供者名稱是使用者在登入頁面上選取識別提供者時,會在按鈕上看到的文字。

  6. 選取下一步

  7. 回覆 URL 底下,選取複製

    不要關閉 Power Pages 瀏覽器索引標籤。您很快就要返回此頁面。

在識別提供者中建立應用程式註冊

  1. 使用您複製的回覆 URL 建立應用程式,並向您的識別提供者註冊。

  2. 複製應用程式或用戶端識別碼及用戶端密碼。

  3. 尋找應用程式的端點,並複製 OpenID Connect 中繼資料文件 URL。

  4. 根據需要變更您識別提供者的其他設定。

在 Power Pages 中輸入網站設定

返回先前離開的 Power Pages 設定識別提供者頁面,然後輸入以下值。 或者,視需要變更其他設定。 完成後,選取確認

  • 授權單位:按照以下格式輸入授權 URL: https://login.microsoftonline.com/<Directory (tenant) ID>/,其中<目錄 (租用戶) 識別碼>您建立應用程式的目錄 (租用戶) 識別碼。 例如,如果 Azure 入口網站中的目錄 (租用戶) 識別碼是 7e6ea6c7-a751-4b0d-bbb0-8cf17fe85dbb,則授權 URL 為 https://login.microsoftonline.com/7e6ea6c7-a751-4b0d-bbb0-8cf17fe85dbb/​

  • 用戶端識別碼:貼上您建立應用程式的應用程式或用戶端識別碼。

  • 重新導向 URL:如果您的網站自訂網域名稱,請輸入自訂 URL,否則請保留預設值。 請確定該值與您所建立 的應用程式 的重定向 URI 完全相同。

  • 中繼資料位址:貼上您複製的 OpenID connect 中繼資料文件 URL。

  • 範圍:使用 OpenID Connect scope 參數輸入要要求的範圍清單 (以空格分隔)。 預設值是 openid

    openid 值是必要的。 瞭解其他可以新增的宣告

  • 回覆類型:輸入 OpenID Connect response_type 參數的值。 可能的值包括:codecode id_tokenid_tokenid_token tokencode id_token token。 預設值是 code id_token

  • 用戶端密碼:貼上來自提供者應用程式的用戶端密碼。 這也可能稱為應用程式密碼消費者密碼。 若回覆類型為 code,則需要此設定。

  • 回覆模式:輸入 OpenID Connect response_mode 參數的值。 如果回覆類型為 code,則該值應為 query。 預設值是 form_post

  • 外部登出:此設定可控制您的網站是否使用同盟登出。透過同盟登出,當使用者登出應用程式或網站時,他們也會登出所有使用相同識別提供者的應用程式和網站。 打開此項可以在使用者從您的網站登出時,將其重新導向至同盟登出體驗。 關閉此項可讓使用者只登出您的網站。

  • 登出後重新導向 URL:輸入識別提供者在使用者登出後應重新導向到的 URL。此位置應適當設定於識別提供者設定中。

  • RP 發起登出:此設定可控制信賴憑證者 (OpenID Connect 用戶端應用程式) 是否可以登出使用者。 若要使用此設定,請開啟外部登出

Power Pages 中的其他設定

其他設定可讓您更好地控制使用者如何透過 OpenID Connect 識別提供者進行驗證。 您不一定要設定這些值。 它們都是選用的。

  • 簽發者篩選:輸入於所有租用戶中比對所有簽發者的萬用字元型篩選,例如 https://sts.windows.net/*/

  • 驗證對象:打開此設定可在權杖驗證期間驗證對象。

  • 有效對象:輸入以逗點分隔的對象 URL 清單。

  • 驗證簽發者:打開此設定可在權杖驗證期間驗證簽發者。

  • 有效簽發者:輸入以逗點分隔的簽發者 URL 清單。

  • 註冊宣告對應登入宣告對應 :在使用者驗證中,宣告是描述使用者身分識別的資訊,如電子郵件地址或出生日期。 當您登入應用程式或網站時,它會建立權杖。 權杖包含身分識別的資訊,包括與其關聯的任何宣告。 當您存取應用程式或網站的其他部分,或連線到相同識別提供者的其他應用程式和網站時,會使用權杖來驗證您的身分。 宣告對應是變更權杖所包含資訊的方式。 它可以用來自訂應用程式或網站可用的資訊,並控對制功能或資料的存取。 註冊宣告對應可修改您註冊應用程式或網站時發出的宣告。 登入宣告對應可修改您登入應用程式或網站時發出的宣告。 深入了解宣告對應原則

  • 隨機數存留期:輸入隨機數值的存留期 (以分鐘為單位)。 預設值為 10 分鐘。

  • 使用權杖存留期:此設定控制驗證工作階段存留期 (例如 Cookie) 是否應與驗證權杖的存留期相符。 如果您將打開此項,此值將覆寫 Authentication/ApplicationCookie/ExpireTimeSpan 網站設定中的應用程式 Cookie 到期時間範圍值。

  • 電子郵件的連絡人對應:此設定決定連絡人登入時,是否要對應至相對的電子郵件地址。

    • 開啟:將唯一的連絡人記錄關連至相符的電子郵件位址,然後在使用者成功登入後,自動指派外部識別提供者給連絡人。
    • 關閉

注意

UI_Locales要求參數會自動在驗證要求中傳送,並設定為在入口網站上選取的語言。

另請參閱

使用 Azure Active Directory (Azure AD) B2C 設定 OpenID Connect 提供者
使用 Microsoft Entra ID 設定 OpenID Connect 提供者
OpenID Connect 常見問題集