設定 SAML IDP

SAML 規格定義了三個實體:

  • 主體 (新版 Edge UI 使用者)
  • 服務供應商 (Apigee SSO)
  • 識別資訊提供者 (傳回 SAML 斷言)

啟用 SAML 後,主體 (New Edge UI 使用者) 會要求存取服務供應商 (Apigee SSO)。Apigee SSO (以聯合身分代理程式的身分) 接著會向 SAML IDP 要求並取得身分宣告,並使用該宣告產生存取新版 Edge UI 所需的 OIDC 和 OAuth2 權杖。接著,系統會將使用者重新導向回新版 Edge 使用者介面。

程序如下:

SAML 驗證流程

在這張圖中:

  1. 使用者嘗試存取新版 Edge UI,方法是向 Edge UI 的登入網址發出要求。例如:https://edge_management_ui_IP_DNS:3001
  2. 未經驗證的要求會重新導向至 Apigee SSO。
  3. SSO 會將要求重新導向至 SAML IDP。例如:https://idp.customer.com。
  4. 如果使用者未登入識別資訊提供者,系統會提示他們登入。
  5. 使用者登入。
  6. SAML IDP 會驗證使用者身分,產生 SAML 2.0 聲明,並傳回給 Apigee SSO。
  7. Apigee SSO 會驗證宣告、從宣告中擷取使用者身分、為新版 Edge UI 產生 OIDC/OAuth2 驗證權杖,並將使用者重新導向至下列網址的新版 Edge UI 主頁面:
    https://edge_management_ui_IP_DNS:3001/edge

Edge 支援多種 IDP,包括 Okta 和 Microsoft Active Directory 同盟服務 (ADFS)。如需 Okta 的相關資訊,請參閱下一節。

如要設定 SAML IDP,Edge 需要電子郵件地址來識別使用者。因此,識別資訊提供者必須傳回電子郵件地址,做為身分聲明的一部分。

此外,您必須使用下列資訊設定 IDP,確保 IDP 能與 Apigee SSO 通訊:

設定 說明
Assertion Consumer Service URL (Single Sign On URL)

使用者輸入 IDP 憑證後,系統會將他們重新導向至 Apigee SSO。格式如下:

protocol://apigee_sso_IP_DNS:port/callback

例如:

http://1.2.3.4:9099/callback
服務供應商實體 ID (或目標對象 URI)

根據預設,Apigee SSO 預期 SP 實體 ID 為 apigee-saml-login-opdk。

如果您在設定中設定 lib_settings_saml_entity_issuer 屬性來覆寫這項預設設定,請改為在這裡指定自訂實體 ID。

設定 Okta

如何設定 Okta:

  1. 登入 Okta。
  2. 選取「應用程式」,然後選取 SAML 應用程式。
  3. 選取「指派」分頁,將使用者新增至應用程式。這些使用者將可登入 New Edge UI 並發出 Edge API 呼叫。不過,您必須先將每位使用者新增至 Edge 組織,並指定使用者的角色。詳情請參閱「註冊新的 Edge 使用者」。
  4. 選取「Sign on」分頁標籤,取得識別資訊提供者中繼資料網址。您需要這項資訊,才能在 /opt/apigee/customer/application/openldap.properties 檔案中調整 SAML 設定。
  5. 選取「一般」分頁,設定 Okta 應用程式,如下表所示:
    設定 說明
    單一登入網址

    指定使用者輸入 Okta 憑證後,重新導向回 SSO 的網址。這個網址的格式如下:

    http://apigee_sso_IP_DNS:9099/callback

    如果 Apigee SSO 終止 TLS:

    https://apigee_sso_IP_DNS:9443/callback

    如果負載平衡器終止 TLS:

    https://load_balancer_IP_or_DNS:443/callback
    Use this for Recipient URL and Destination URL 勾選這個核取方塊。
    目標對象 URI (SP 實體 ID) 請將此值設為 apigee-saml-login-opdk。這是預設的 Edge SP 實體 ID。如果您在設定中使用 lib_settings_saml_entity_issuer 屬性覆寫這個值,請改為在這裡指定自訂實體 ID。
    預設 RelayState 留空。
    名稱 ID 格式 指定 EmailAddress。
    應用程式使用者名稱 指定 Okta username。
    屬性陳述式 指定要對應至設定中 SAML_USERNAME_ATTR、SAML_EMAIL_ATTR 和 SAML_GROUPS_ATTR 屬性的屬性。一般來說,您應該對應 name、email 和 groups。

設定完成後,Okta 就會在登入期間,成功將 SAML 斷言傳回 Apigee SSO。