外部 IDP 驗證 (新 Edge UI) 總覽

Edge UI 和 Edge Management API 會向 Edge Management Server 發出要求來進行運作,其中 Management Server 支援下列類型的驗證方式:

  • 基本驗證:透過傳送使用者名稱和密碼登入 Edge UI 或向 Edge Management API 提出要求。
  • OAuth2:交換 Edge 基本驗證憑證以取得 OAuth2 存取權杖並更新權杖。如要呼叫 Edge Management API,請在 API 呼叫的不記頭標頭中傳遞 OAuth2 存取權杖。

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

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

SAML 和 LDAP IDP 都支援單一登入 (SSO) 環境。除了透過 Edge 提供且支援外部 IdP 的其他服務外,您也可以將外部 IdP 與 Edge 搭配使用,就能讓 Edge UI 和 API 支援單一登入 (SSO) 服務。

本節所述的啟用外部 IDP 支援與外部驗證的操作說明不同,原因如下:

  • 本節新增單一登入 (SSO) 支援
  • 本節的適用對象為 Edge UI (而非傳統版 UI) 的使用者
  • 此部分僅適用於 4.19.06 以上版本

關於 Apigee SSO

如要支援 SAML 或 Edge on Edge,請安裝 Apigee 單一登入 (SSO) 模組 apigee-sso。下圖顯示了邊緣中私有雲安裝的 Apigee 單一登入 (SSO) 服務:

Apigee SSO 的通訊埠用量

您可以將 Apigee SSO 模組安裝在 Edge UI 和管理伺服器所在的節點上,也可以安裝在各自的節點上。確保 Apigee SSO 可以透過通訊埠 8080 存取管理伺服器。

您必須在 Apigee 單一登入 (SSO) 節點上開啟通訊埠 9099,才能支援透過瀏覽器、外部 SAML 或 LDAP IDP,以及管理伺服器和邊緣 UI 存取 Apigee 單一登入 (SSO) 服務。在設定 Apigee SSO 時,您可以指定外部連線使用 HTTP 或加密的 HTTPS 通訊協定。

Apigee 單一登入 (SSO) 會使用 Postgres 節點上通訊埠 5432 存取的 Postgres 資料庫。一般而言,您可以使用與 Edge 安裝的 Postgres 伺服器相同,無論是獨立的 Postgres 伺服器,還是在主要/待命模式下設定的兩個 Postgres 伺服器。如果 Postgres 伺服器的負載量偏高,您也可以選擇為 Apigee SSO 建立獨立的 Postgres 節點。

新增對 OAuth2 的支援至 Private Cloud 適用的 Edge Cloud

如上所述,SAML 的 Edge 實作必須使用 OAuth2 存取權杖。因此,Edge for Private Cloud 已支援 OAuth2。詳情請參閱 OAuth 2.0 簡介

關於 SAML

SAML 驗證提供許多優點,使用 SAML 時,您可以:

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

啟用 SAML 後,邊緣 UI 和 Edge Management API 的存取權就會使用 OAuth2 存取權杖。 這些權杖是由 Apigee 單一登入 (SSO) 模組產生,該模組會接受您的 IdP 傳回的 SAML 宣告。

透過 SAML 宣告產生後,OAuth 權杖的有效期限為 30 分鐘,更新權杖的有效期限為 24 小時。您的開發環境可能支援自動化處理工作,例如要求較長權杖的常見開發工作,例如測試自動化或持續整合/持續部署 (CI/CD)。如要瞭解如何為自動化工作建立特殊符記,請參閱「將 SAML 搭配自動化工作使用」一文。

關於 LDAP

輕量級目錄存取通訊協定 (LDAP) 是開放業界標準的應用程式通訊協定,用於存取及維護分散式目錄資訊服務。目錄服務可能會提供任何經過整理的記錄,通常採用階層結構,例如公司電子郵件目錄。

Apigee SSO 中的 LDAP 驗證會使用 Spring Security LDAP 模組。因此,Apigee SSO 的 LDAP 支援的驗證方法和設定選項,與 Spring Security LDAP 中找到的驗證方法和設定選項直接相關。

適用於私有雲的 LDAP (具備 Edge) 支援下列 LDAP 相容伺服器驗證方式:

  • 搜尋與繫結 (間接繫結)
  • Simple Bind (直接繫結)

Apigee SSO 會嘗試擷取使用者的電子郵件地址,並使用該地址更新內部使用者記錄,讓 Edge 中現有的電子郵件地址用於授權。

Edge UI 和 API 網址

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

http://edge_UI_IP_DNS:9000
https://edge_UI_IP_DNS:9000

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

針對 Edge Management API:

http://ms_IP_DNS:8080/v1
https://ms_IP_DNS:8080/v1

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

在 Apigee SSO 上設定 TLS

根據預設,Apigee SSO 連線會在代管 apigee-sso 的節點 (Apigee SSO 模組) 上透過通訊埠 9099 使用 HTTP。內建於 apigee-sso 中,是處理 HTTP 和 HTTPS 要求的 Tomcat 執行個體。

Apigee SSO 和 Tomcat 支援三種連線模式:

  • 預設:預設設定支援通訊埠 9099 的 HTTP 要求。
  • SSL_TERMINATION:啟用您所選通訊埠的 Apigee SSO 的 TLS 存取權。您必須為這個模式指定 TLS 金鑰和憑證。
  • SSL_PROXY:以 Proxy 模式設定 Apigee SSO,代表您在 apigee-sso 前方安裝負載平衡器,並在負載平衡器上終止 TLS。您可以針對來自負載平衡器的要求指定 apigee-sso 使用的通訊埠。

啟用入口網站的外部 IDP 支援

啟用 Edge 的外部 IDP 支援後,您可以選擇為 Apigee Developer Services 入口網站 (或簡稱為入口網站) 啟用這項功能。向 Edge 提出要求時,入口網站支援 SAML 和 LDAP 驗證。請注意,這與用於開發人員登入入口網站的 SAML 和 LDAP 驗證不同。您必須分別為開發人員登入設定外部 IDP 驗證。詳情請參閱「將入口網站設為使用 IDP」。

在設定入口網站的過程中,您必須指定透過 Edge 安裝的 Apigee 單一登入 (SSO) 模組網址:

包含權杖的要求/回應流程