外部 IDP 驗證總覽

新版 Edge UI 和 Edge Management API 的運作方式是向 Edge Management Server 提出要求,而 Management Server 支援下列驗證類型:

  • 基本驗證:登入新版 Edge UI,或傳送使用者名稱和密碼,向 Edge Management API 發出要求。
  • OAuth2 / OIDC:將 Edge Basic Auth 憑證換成 OAuth2 存取權杖和更新權杖。在 API 呼叫的 Bearer 標頭中傳遞 OAuth2 存取權杖,即可呼叫 Edge Management API。

Edge 支援使用下列外部身分識別資訊提供者 (IDP) 進行驗證:

  • 安全宣告標記語言 (SAML) 2.0:從 SAML 識別資訊提供者傳回的 SAML 宣告產生 OAuth 存取權杖。
  • 輕量型目錄存取通訊協定 (LDAP):使用 LDAP 的搜尋和繫結驗證方法,產生 OAuth 存取權杖。

SAML 和 LDAP IDP 都支援單一登入 (SSO) 環境。在 Edge 中使用外部 IDP,即可為新版 Edge UI 和 API,以及您提供且支援外部 IDP 的任何其他服務,提供單一登入 (SSO) 支援。

關於新的 Apigee SSO 結構

從 Edge for Private Cloud 4.54.00 開始,舊版 apigee-sso 元件已由現代化的輕量 OpenID Connect (OIDC) 身分代理程式 Dex 取代。這個單一登入 (SSO) 轉接程式會直接整合到 apigee-openldap 元件生命週期,因此不必安裝個別的 apigee-sso 模組。

Apigee SSO (Dex 代理) 與 apigee-openldap 綁定,因此會部署在與 OpenLDAP 執行個體相同的節點上。生命週期管理是透過 OPDK 動作 (例如 apigee-service apigee-openldap start_sso 和 stop_sso) 原生處理。

apigee-openldap 節點必須開啟通訊埠 9099,才能支援從瀏覽器、外部 SAML 或 LDAP IDP,以及管理伺服器和新版 Edge UI 存取 Apigee SSO。設定 Apigee SSO 時,您可以指定外部連線要使用 HTTP 或加密的 HTTPS 通訊協定。

Apigee SSO 是一種無狀態服務,使用 Postgres 節點上通訊埠 5432 可存取的 Postgres 資料庫 (apigee_dex),在多個節點之間保存 OAuth2 狀態,確保高可用性。一般來說,您可以使用與 Edge 一起安裝的 Postgres 伺服器,可以是獨立的 Postgres 伺服器,也可以是設定為主要/待機模式的兩部 Postgres 伺服器。如果 Postgres 伺服器負載量偏高,您也可以選擇建立專供 SSO 資料庫使用的 Postgres 節點。

支援標準 OpenID Connect (OIDC)

Edge 實作 SAML 和 LDAP 時,會使用標準 OpenID Connect (OIDC) 和 OAuth2 存取權杖。新版 Apigee SSO 會嚴格發放符合 OIDC 標準的權杖 (使用 email 和 sub 等標準聲明,以及不透明的更新權杖)。詳情請參閱「OAuth 2.0 簡介」。

關於 SAML

SAML 驗證有多項優點。使用 SAML 可讓您:

  • 全面控管使用者管理。使用者離開貴機構並集中取消佈建後,系統會自動拒絕他們存取 Edge。
  • 控管使用者驗證存取 Edge 的方式。您可以為不同的 Edge 機構選擇不同的驗證類型。
  • 控管驗證政策。您的 SAML 供應商可能支援更符合企業標準的驗證政策。
  • 您可以監控 Edge 部署作業的登入、登出、登入失敗和高風險活動。

啟用 SAML 後,系統會使用 OAuth2 存取權杖,存取新版 Edge UI 和 Edge Management API。這些權杖是由 Apigee SSO 產生,可接受 IDP 傳回的 SAML 斷言。

關於 LDAP

輕量型目錄存取通訊協定 (LDAP) 是一種開放的業界標準應用程式通訊協定,可用於存取及維護分散式目錄資訊服務。目錄服務可提供任何有組織的記錄集,通常具有階層式結構,例如公司電子郵件目錄。

新版 Apigee SSO 內建 LDAP 連接器,可進行 LDAP 驗證。連接器會對 organizationalRole 和標準屬性 (例如 mail 和 uid) 執行 LDAP 搜尋,以便將 Apigee 舊版使用者原生對應至標準 OIDC 聲明。

Edge for Private Cloud 的 LDAP 支援標準搜尋和繫結驗證方法,可與 LDAP 相容伺服器搭配使用。

Apigee SSO 會擷取使用者的電子郵件地址和標準 OIDC 宣告 (例如 email、preferred_username 和 groups),並更新內部使用者記錄,確保檔案中有最新的電子郵件地址,因為 Edge 會使用這個電子郵件地址進行授權。

新的 Edge 使用者介面和 API 網址

您用來存取新版 Edge UI 和 Edge Management API 的網址,與啟用 SAML 或 LDAP 前使用的網址相同。在新版 Edge UI 中:

http://edge_UI_IP_DNS:3001

其中 edge_UI_IP_DNS 是代管 New Edge UI 的機器的 IP 位址或 DNS 名稱。設定 New Edge UI 時,您可以指定連線使用 HTTP 或加密的 HTTPS 通訊協定。

Edge Management API:

http://ms_IP_DNS:8080/v1

其中 ms_IP_DNS 是管理伺服器的 IP 位址或 DNS 名稱。設定 API 時,您可以指定連線使用 HTTP 或加密的 HTTPS 通訊協定。

使用新版 Apigee SSO 設定 TLS

根據預設,Apigee SSO 連線會透過託管 apigee-openldap 的節點,使用通訊埠 9099 上的 HTTP。以 Go 為基礎的輕量型身分中介服務,可原生處理 HTTP 和 HTTPS 要求。

Apigee SSO 支援三種連線模式:

  • DEFAULT:預設設定支援通訊埠 9099 上的 HTTP 要求。
  • SSL_TERMINATION:在您選擇的通訊埠上啟用 TLS 存取 Apigee SSO。您必須為這個模式指定 TLS 金鑰和憑證。
  • SSL_PROXY:以 Proxy 模式設定 Apigee SSO,也就是在元件前方安裝負載平衡器,並在負載平衡器上終止 TLS。您可以指定負載平衡器要求使用的 Apigee SSO 通訊埠。