為 HTTPS 存取權設定 apigee-sso

Private Cloud v4.18.01 專用 Edge

請參閱「安裝及設定 Edge 單一登入 (SSO)」一文 安裝並設定 Edge SSO 模組,以便透過通訊埠 9099 使用 HTTP,詳情請見 加入下列屬性:

SSO_TOMCAT_PROFILE=DEFAULT

或者,您也可以將 SSO_TOMCAT_PROFILE 設為下列任一項 的值啟用 HTTPS 存取:

  • SSL_PROXY - 在 Proxy 模式中設定 apigee-sso,表示您擁有 在 apigee-sso 安裝負載平衡器,並在負載時終止 TLS 。接著,您針對負載發出的要求,指定 apigee-sso 使用的通訊埠 。
  • SSL_TERMINATION - 針對 Edge SSO 模組 apigee-sso 啟用 TLS 存取權。 通訊埠您必須為這個模式指定 KeyStore,當中包含由 CA。您無法使用自行簽署的憑證。

初始安裝與設定 apigee-sso 時,您可以選擇啟用 HTTPS,也可以日後再啟用。

使用任一模式啟用 HTTPS 對 apigee-sso 的存取權,都會停用 HTTP 資源存取權也就是說,您無法使用 HTTP 和 HTTPS 存取 apigee-sso 以並行方式處理

啟用 SSL_PROXY 模式

SSL_PROXY 模式下,您的系統 在 Edge SSO 模組前方使用負載平衡器,並終止負載平衡器的 TLS。於 下圖,負載平衡器終止通訊埠 443 上的 TLS,然後將要求轉送至 通訊埠 9099 上的 Edge SSO 模組:

在這項設定中,您信任負載平衡器與邊緣單一登入 (SSO) 模組之間的連線 因此該連線不需使用 TLS。但外部實體,例如 SAML IDP 現在必須在通訊埠 443 (而非未受保護的 9099 通訊埠) 上存取邊緣單一登入 (SSO) 模組。

如要在 SSL_PROXY 模式中設定 Edge SSO 模組,為什麼需要執行 Edge 單一登入 (SSO) 模組 自動產生在驗證程序中由 IdP 在外部使用的重新導向網址。 因此,這些重新導向網址必須包含負載平衡器的外部通訊埠編號,443 吋 並非邊緣單一登入 (Edge) 模組上的內部通訊埠 9099。

注意:您不必建立 SSL_PROXY 模式的 TLS 憑證和金鑰,因為連線的來源為 負載平衡器傳送至邊緣單一登入 (SSO) 模組時,會使用 HTTP。

如要為 SSL_PROXY 模式設定邊緣單一登入 (SSO) 模組,請按照下列指示操作:

  1. 在設定檔中新增以下設定:
    # 啟用 SSL_PROXY 模式。
    SSO_TOMCAT_PROFILE=SSL_PROXY

    # 指定 Apigee-sso 通訊埠,通常介於 1025 至 65535 之間。
    # 通訊埠 1024 以下的通訊埠通常須由 apigee-sso 取得根存取權。
    # 預設值為 9099。
    SSO_TOMCAT_PORT=9099

    # 指定終止 TLS 的負載平衡器上的通訊埠編號。
    # 必須要有這個通訊埠編號,apigee-sso 才能自動產生重新導向網址。
    SSO_TOMCAT_PROXY_PORT=443
    SSO_PUBLIC_URL_PORT=443

    # 將 apigee-sso 的公開存取權配置設為 https。
    SSO_PUBLIC_URL_SCHEME=https
  2. 設定邊緣單一登入 (SSO) 模組:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup-f 設定 -f configFile
  3. 更新 IdP 設定,現在透過通訊埠 443 發出 HTTPS 要求 以便存取 Edge 單一登入 (SSO) 服務請參閱設定 SAML IDP
  4. 設定下列屬性,即可更新 HTTPS 的 Edge UI 設定:
    SSO_PUBLIC_URL_PORT=443
    SSO_PUBLIC_URL_SCHEME=https


    詳情請參閱「在 Edge UI 中啟用 SAML」。
  5. 如果您已安裝開發人員服務入口網站或 API BaaS,請將其更新為使用 HTTPS 存取 Ede 單一登入 (SSO) 服務。若需更多資訊,請參閱:

啟用 SSL_TERMINATION 模式

SSL_TERMINATION 模式中, 必須:

  • 系統會產生 TLS 憑證和金鑰,並將其儲存在 KeyStore 檔案中。請勿使用 自行簽署的憑證。您必須透過 CA 產生憑證。
  • 更新 apigee-sso. 的配置設定。

如何透過憑證和金鑰建立 KeyStore 檔案:

  1. 為 JKS 檔案建立目錄:
    >sudo mkdir -p /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  2. 變更為新目錄:
    >cd /opt/apigee/customer/application/apigee-sso/tomcat-ssl/
  3. 建立包含憑證和金鑰的 JKS 檔案。必須為這個模式指定 KeyStore 該憑證包含由 CA 簽署的憑證。您無法使用自行簽署的憑證。舉例來說 建立 JKS 檔案,請參閱設定 TLS/SSL Edge On Premises
  4. 讓 JKS 檔案由「apigee」擁有使用者:
    >sudo chown -R apigee:apigee /opt/apigee/customer/application/apigee-sso/tomcat-ssl

如要設定邊緣單一登入 (SSO) 模組,請按照下列指示操作:

  1. 在設定檔中新增以下設定:
    # 啟用 SSL_TERMINATION 模式。
    SSO_TOMCAT_PROFILE=SSL_TERMINATION

    # 指定 KeyStore 檔案的路徑。
    SSO_TOMCAT_KEYSTORE_FILEPATH=/opt/apigee/customer/application/apigee-sso/tomcat-ssl/keystore.jks
    SSO_TOMCAT_KEYSTORE_ALIAS=sso

    # 建立 KeyStore 時指定的密碼。
    SSO_TOMCAT_KEYSTORE_PASSWORD=keystorePassword

    # 指定介於 1025 至 65535 之間的 HTTPS 通訊埠號碼。
    # 通訊埠 1024 以下的通訊埠通常須由 apigee-sso 取得根存取權。
    # 預設值為 9099。
    SSO_TOMCAT_PORT=9443
    SSO_PUBLIC_URL_PORT=9443

    # 將 apigee-sso 的公開存取權配置設為 https。
    SSO_PUBLIC_URL_SCHEME=https
  2. 設定邊緣單一登入 (SSO) 模組:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-sso setup-f 設定 -f configFile
  3. 更新 IdP 設定,立即在負載的通訊埠 9443 發出 HTTPS 要求 以便存取 Edge 單一登入 (SSO) 服務請參閱設定 SAML IDP
  4. 設定下列屬性,即可更新 HTTPS 的 Edge UI 設定:
    SSO_PUBLIC_URL_PORT=9443
    SSO_PUBLIC_URL_SCHEME=https


    詳情請參閱「在 Edge UI 中啟用 SAML」。
  5. 如果您已安裝開發人員服務入口網站或 API BaaS,請將其更新為使用 HTTPS 存取 Ede 單一登入 (SSO) 服務。若需更多資訊,請參閱:

使用 SSL_TERMINATION 模式時設定 SSO_TOMCAT_PROXY_PORT

您可能會在 Edge SSO 模組前方有一個負載平衡器,會在負載時終止 TLS 即便是在負載平衡器和邊緣單一登入 (SSO) 之間啟用 TLS。上圖 對於 SSL_PROXY 模式, 表示負載平衡器到邊緣單一登入 (SSO) 的連線使用 TLS。

在這種情況下,您必須比照上述 SSL_TERMINATION 模式的做法,在邊緣單一登入 (SSO) 上設定 TLS。不過,如果載入作業 負載平衡器使用的 TLS 通訊埠編號與 Edge 傳輸層安全標準 (TLS) 所用的 TLS 通訊埠號碼不同,因此您必須指定 SSO_TOMCAT_PROXY_PORT 屬性中的屬性。例如:

  • 負載平衡器在通訊埠 443 終止 TLS
  • 邊緣單一登入 (SSO) 會在通訊埠 9443 終止 TLS

請務必在設定檔中加入以下設定:

# 指定通訊埠 終止 TLS 的負載平衡器編號。
# 這個通訊埠編號 藥學 以 Apigee-sso 加密重新導向 網址。
SSO_TOMCAT_PROXY_PORT=443
SSO_PUBLIC_URL_PORT=443

設定 IDP 和 Edge UI,以透過通訊埠 443 發出 HTTPS 要求。