設定 VMware Spring Cloud 閘道

注意

Azure Spring Apps 是 Azure Spring Cloud 服務的新名稱。 雖然服務有新的名稱,但是您暫時還是會在某些位置看到舊的名稱。我們正在致力更新螢幕擷取畫面、影片和圖表等資產。

本文適用於:❌ 基本/標準✔️企業

本文說明如何使用 Azure Spring Apps Enterprise 方案設定 VMware Tanzu 的 VMware Spring Cloud Gateway。

VMware Spring Cloud Gateway 是以開放原始碼 Spring Cloud Gateway 專案為基礎的商業 VMware Tanzu 元件。 適用於 Tanzu 的 VMware Spring Cloud Gateway 會處理 API 開發小組的跨領域考慮,例如單一登錄 (SSO)、訪問控制、速率限制、復原和安全性。 您可以在為 API 開發選擇的程式設計語言中使用新式雲端原生模式來加速 API 傳遞。

VMware Spring Cloud 閘道實例會根據規則路由傳送流量。 它支援相應 縮小/相應放大相應增加/減少 ,以符合動態流量負載。

VMware Spring Cloud Gateway 包含下列功能:

  • 動態路由設定,獨立於個別應用程式,您可以套用和變更而不重新編譯
  • 將授權 JSON Web 令牌 (JWT) 宣告傳輸至應用程式服務的商業 API 路由篩選
  • 用戶端憑證授權
  • 速率限制方法
  • 斷路器設定
  • 支援透過 HTTP 基本身份驗證認證存取應用程式服務

為了與 VMware Tanzu 的 API 入口網站整合,VMware Spring Cloud Gateway 會在路由設定的任何新增或變更之後自動產生 OpenAPI 第 3 版檔。 如需詳細資訊,請參閱 使用適用於 VMware Tanzu 的 API 入口網站。

必要條件

  • 已啟用 VMware Spring Cloud Gateway 的已布建 Azure Spring Apps 企業方案服務實例。 如需詳細資訊,請參閱 快速入門:使用企業方案建置和部署應用程式至 Azure Spring Apps。
  • Azure CLI 2.0.67 版或更新版本。 使用下列命令來安裝 Azure Spring Apps 擴充功能: az extension add --name spring

啟用或停用 VMware Spring Cloud Gateway

您可以使用 Azure 入口網站 或 Azure CLI,在建立服務實例之後啟用或停用 VMware Spring Cloud Gateway。 停用 VMware Spring Cloud Gateway 之前,您必須先取消指派其端點,並移除所有路由設定。

使用下列步驟,使用 Azure 入口網站 來啟用或停用 VMware Spring Cloud Gateway:

  1. 移至您的服務資源,然後選取 [Spring Cloud Gateway]。
  2. 選取 [管理]
  3. 選取或清除 [ 啟用 Spring Cloud Gateway ] 複選框,然後選取 [ 儲存]。

您現在可以在 Spring Cloud Gateway 頁面上檢視 Spring Cloud Gateway 的狀態。

顯示 Spring Cloud Gateway 頁面之 Azure 入口網站 螢幕快照。

重新啟動 VMware Spring Cloud 閘道

完成重新啟動動作之後,VMware Spring Cloud Gateway 實例會以滾動方式重新啟動。

使用下列步驟,使用 Azure 入口網站 重新啟動 VMware Spring Cloud Gateway:

  1. 移至您的服務資源,然後選取 [Spring Cloud Gateway]。
  2. 選取重新啟動
  3. 選取 [ 確定 ] 以確認重新啟動。

顯示 Spring Cloud Gateway 頁面之 Azure 入口網站 的螢幕快照,其中包含重新啟動閘道的確認訊息。

將公用端點指派給 VMware Spring Cloud Gateway

本節說明如何將公用端點指派給 VMware Spring Cloud Gateway,並設定其屬性。

若要在 Azure 入口網站 中指派端點,請使用下列步驟:

  1. 開啟您的 Azure Spring Apps 實例。
  2. 在瀏覽窗格中選取 [Spring Cloud Gateway ],然後選取 [ 概觀]。
  3. 將 [指派端點] 設定為 []。

幾分鐘后, URL 會顯示已設定的端點 URL。 儲存 URL 以供稍後使用。

Azure 入口網站 的螢幕快照,其中顯示 Spring Cloud Gateway 概觀頁面,其中包含指派端點的切換開關。

設定 VMware Spring Cloud Gateway 元數據

VMware Spring Cloud Gateway 元數據會自動產生 OpenAPI 第 3 版檔。 您可以設定 VMware Spring Cloud Gateway 元數據,在 VMware Tanzu 的 API 入口網站中顯示路由群組。 如需詳細資訊,請參閱 使用適用於 VMware Tanzu 的 API 入口網站。

下表描述可用的元資料選項:

屬性 說明
title 描述 VMware Spring Cloud Gateway 實例上可用 API 內容的標題。 預設值是 Spring Cloud Gateway for K8S
description VMware Spring Cloud Gateway 實例上可用 API 的詳細描述。 預設值是 Generated OpenAPI 3 document that describes the API routes configured for '[Gateway instance name]' Spring Cloud Gateway instance deployed under '[namespace]' namespace.*.
documentation VMware Spring Cloud Gateway 實例上可用的 API 檔位置。
version 此 VMware Spring Cloud Gateway 實例上可用的 API 版本。 預設值是 unspecified
serverUrl 在 VMware Spring Cloud Gateway 實例上存取 API 的基底 URL。 如果您想要與 API 入口網站整合,這個屬性是必要的。

您可以使用 Azure 入口網站 或 Azure CLI 來編輯元資料屬性。

若要編輯 Azure 入口網站 中的元數據,請使用下列步驟:

  1. 開啟您的 Azure Spring Apps 實例。
  2. 在瀏覽窗格中選取 [Spring Cloud Gateway ],然後選取 [ 設定]。
  3. 指定 API 所列屬性的值。
  4. 選取 [儲存]。

Azure 入口網站 的螢幕快照,其中顯示 [Spring Cloud Gateway 組態] 索引標籤,其中已醒目提示 [API] 區段。

設定單一登入

VMware Spring Cloud Gateway 支援透過搭配 OpenID 識別提供者的單一登錄 (SSO) 進行驗證和授權。 提供者支援 OpenID 連線 Discovery 通訊協定。 下表描述 SSO 屬性:

屬性 是必要的嗎? 描述
issuerUri Yes 判斷提示為其簽發者標識碼的 URI。 例如,如果 issuerUrihttps://example.com,則會對 https://example.com/.well-known/openid-configuration提出OpenID提供者組態要求。 結果必須是OpenID提供者組態回應。
clientId Yes OpenID 連線 身分識別提供者的用戶端標識符。
clientSecret Yes OpenID 連線 身分識別提供者的客戶端密碼。
scope Yes 要包含在 JWT 識別令牌中的範圍清單。 此清單應以識別提供者允許的範圍為基礎。

若要使用 Microsoft Entra ID 設定 SSO,請參閱 使用 Spring Cloud Gateway 和 API 入口網站的 Microsoft Entra ID 設定單一登錄。

您可以使用 Azure 入口網站 或 Azure CLI 來編輯 SSO 屬性。

若要編輯 Azure 入口網站 中的 SSO 屬性,請使用下列步驟:

  1. 開啟您的 Azure Spring Apps 實例。
  2. 在瀏覽窗格中選取 [Spring Cloud Gateway ],然後選取 [ 設定]。
  3. 指定 SSO 所列屬性的值。
  4. 選取 [儲存]。

Azure 入口網站 的螢幕快照,其中顯示 [Spring Cloud Gateway 設定] 索引標籤,其中已醒目提示單一登錄區段。

VMware Spring Cloud Gateway 僅支持支援 OpenID 連線 Discovery 通訊協定的授權伺服器。 此外,請務必設定外部授權伺服器,以允許重新導向回到閘道。 請參閱授權伺服器的檔,並將 新增 https://<gateway-external-url>/login/oauth2/code/sso 至允許的重新導向 URI 清單。

如果您設定錯誤的 SSO 屬性,例如錯誤的密碼,您應該移除整個 SSO 屬性,然後新增正確的組態。

設定 SSO 之後,請記得設定 ssoEnabled: true VMware Spring Cloud Gateway 路由。

設定 SSO 註銷

VMware Spring Cloud Gateway 服務實例會提供預設 API 端點,以註銷目前的 SSO 會話。 此端點路徑為 /scg-logout。 註銷會產生下列其中一個結果,視您呼叫註銷端點的方式而定:

  • 註銷會話,並重新導向至識別提供者 (IdP) 註銷。
  • 註銷服務實例會話。

註銷 IdP 和 SSO 工作階段

如果您將 GET 要求傳送至 /scg-logout 端點,端點會將重新導向回應傳送 302 至 IdP 註銷 URL。 若要取得端點以將用戶傳回閘道服務實例上的路徑,請將重新導向參數新增至 GET 具有 /scg-logout 端點的要求。 例如,您可以使用 ${server-url}/scg-logout?redirect=/home

重新導向參數的值必須是 VMware Spring Cloud Gateway 服務實例的有效路徑。 您無法重新導向至外部 URL。

下列步驟說明如何在微服務中實作 函式的範例:

  1. 取得路由組態,以將註銷要求路由傳送至您的應用程式。 如需範例,請參閱 GitHub 上動物救援存放庫中的路線設定。

  2. 將您需要的任何註銷邏輯新增至應用程式。 最後,您需要GET對網關/scg-logout端點的要求,如動物救援存放庫中方法的值getActionButton所示return

只註銷 SSO 工作階段

如果您使用 將要求傳送 GET/scg-logout 端點 XMLHttpRequest302 則可以吞下重新導向,而不會在回應處理程序中處理。 在此情況下,使用者只會註銷 VMware Spring Cloud Gateway 服務實例上的 SSO 工作階段。 使用者仍然會有有效的 IdP 會話。 一般而言,如果用戶嘗試再次登入,系統會自動以從IdP驗證的方式傳回閘道。

您需要有路由設定,才能將註銷要求路由傳送至您的應用程式,如下列範例所示。 此程式代碼會建立僅限網關的註銷 SSO 工作階段。

const req = new XMLHttpRequest();
req.open("GET", "/scg-logout);
req.send();

設定跨原始來源資源分享

跨原始來源資源分享 (CORS) 允許從第一個資源服務所在的網域以外的另一個網域要求網頁上受限制的資源。 下表描述可用的 CORS 組態選項。

屬性 說明
allowedOrigins 允許的來源提出跨網站要求
allowedOriginPatterns 允許的來源模式提出跨網站要求
allowedMethods 跨網站要求上允許的 HTTP 方法
allowedHeaders 跨網站要求中允許的標頭
maxAge 用戶端快取來自預檢要求的回應時間,以秒為單位
allowCredentials 跨網站要求是否支援用戶認證
exposedHeaders 要針對跨網站要求公開的 HTTP 回應標頭

如果您想要與 API 入口網站整合,請確定您有正確的 CORS 設定。 如需詳細資訊,請參閱 將公用端點指派給 VMware Spring Cloud Gateway 一節。

使用服務調整

您可以自定義 VMware Spring Cloud Gateway 實例的資源配置,包括 vCPU、記憶體和實例計數。

針對高可用性,我們不建議使用單一複本。

下表描述預設資源使用量。

元件名稱 執行個體計數 每個實例的 vCPU 每個實例的記憶體
VMware Spring Cloud Gateway 2 單核心 2 GiB
VMware Spring Cloud Gateway 操作員 2 單核心 2 GiB

設定閘道與應用程式之間的 TLS

若要增強安全性,並協助保護機密資訊免於未經授權的合作對象攔截,您可以在 VMware Spring Cloud Gateway 與您的應用程式之間啟用傳輸層安全性(TLS)。

設定 TLS 之前,您必須具備已啟用 TLS 的應用程式和 TLS 憑證。 若要準備 TLS 憑證,請從受信任的證書頒發機構單位產生憑證(CA)。 憑證會驗證伺服器的身分識別,並建立安全的連線。

在 Azure Spring Apps 中執行已啟用 TLS 的應用程式之後,請將憑證上傳至 Azure Spring Apps。 如需詳細資訊,請參閱在 Azure Spring Apps 中使用應用程式中 TLS/SSL 憑證的匯入憑證一節。

將憑證更新為 Azure Spring Apps 之後,您可以設定閘道的 TLS 憑證並啟用憑證驗證。 您可以在 Azure 入口網站 或使用 Azure CLI 來設定憑證。

使用下列步驟來設定 Azure 入口網站 中的憑證:

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ]。
  2. 在 [ Spring Cloud Gateway ] 頁面上,選取 [ 憑證管理]。
  3. 選取 [ 啟用憑證驗證]。
  4. 在 [憑證] 中 選取 TLS 憑證
  5. 選取 [儲存]。

更新設定可能需要幾分鐘的時間。 當組態完成時,您應該會收到通知。

準備路由設定

您必須在路由組態中將通訊協定指定為 HTTPS。 下列 JSON 物件會指示 VMware Spring Cloud Gateway 針對閘道與應用程式之間的所有流量使用 HTTPS 通訊協定。

  1. 使用下列內容建立名為 test-tls-route.json 的檔案:

    {
        "routes": [
          {
            "title": "Test TLS app",
            "predicates": [
              "Path=/path/to/your/app",
              "Method=GET"
            ]
          }
         ],
        "uri": "https://<app-custom-domain-name>"
    }
    
  2. 使用下列命令將規則套用至應用程式:

    az spring gateway route-config create \
        --resource-group <resource-group-name> \
        --service <Azure-Spring-Apps-instance-name> \
        --name test-tls-app \
        --routes-file test-tls-route.json
    

您現在可以測試應用程式是否已啟用具有閘道端點的 TLS。 如需詳細資訊,請參閱使用 Spring Cloud Gateway設定路由一節。

輪換憑證

憑證到期時,您必須使用下列步驟輪替 VMware Spring Cloud Gateway 中的憑證:

  1. 從受信任的 CA 產生新的憑證。
  2. 將憑證匯入 Azure Spring Apps。 如需詳細資訊,請參閱在 Azure Spring Apps 中使用應用程式中 TLS/SSL 憑證的匯入憑證一節。
  3. 使用 Azure 入口網站 或 Azure CLI 同步處理憑證。

VMware Spring Cloud Gateway 會重新啟動,以確保閘道會針對所有連線使用新的憑證。

使用下列步驟來同步處理憑證:

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ]。
  2. 在 [ Spring Cloud Gateway ] 頁面上,選取 [ 重新啟動],然後確認作業。

設定自動調整設定

您可以設定 VMware Spring Cloud Gateway 的自動調整模式。

下列清單顯示自動調整需求管理可用的選項:

  • [ 手動調整 ] 選項會維護固定實例計數。 您可以相應放大至最多10個實例。 此值會變更 Spring Cloud Gateway 個別執行實例的數目。
  • [ 自定義自動調整 ] 選項會根據任何計量,依任何排程進行調整。

在 Azure 入口網站 上,選擇您想要調整的方式。 下列螢幕快照顯示 [ 自定義自動調整 ] 選項和模式設定:

顯示 [自動調整] 設定頁面的 Azure 入口網站 螢幕快照,其中已醒目提示 [自定義自動調整] 選項。

如需可用計量的詳細資訊,請參閱 Azure Spring Apps 計量的 [用戶計量選項] 區段。

設定回應快取

回應快取組態可讓您定義 HTTP 回應快取,您可以在全域或路由層級套用。

全域啟用回應快取

全域啟用回應快取之後,所有適用的路由都會自動啟用回應快取。

使用下列步驟全域啟用回應快取:

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ]。
  2. 在 [ Spring Cloud Gateway ] 頁面上,選取 [ 組態]。
  3. 在 [回應快取] 區段中,選取 [啟用回應快取],然後將 [範圍] 設定[實例]。
  4. 設定 回應快取的大小存留 時間。
  5. 選取 [儲存]。

使用下列步驟來停用回應快取:

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ]。
  2. 在 [ Spring Cloud Gateway ] 頁面上,選取 [ 組態]。
  3. 在 [ 回應快取 ] 區段中,清除 [ 啟用回應快取]。
  4. 選取 [儲存]。

在路由層級啟用回應快取

若要啟用任何路由的回應快取,請使用 LocalResponseCache 篩選。 下列範例示範如何在路由規則組態中使用 LocalResponseCache 篩選:

{
   "filters": [
      "<other-app-level-filter-of-route>",
   ],
   "routes": [
      {
        "predicates": [
            "Path=/api/**",
            "Method=GET"
         ],
         "filters": [
            "<other-filter-of-route>",
            "LocalResponseCache=3m, 1MB"
         ],
      }
   ]
}

如需詳細資訊,請參閱 VMware 檔中如何使用 VMware Spring Cloud 網關路由篩選器和 LocalResponseCache 中的 LocalResponseCache 一節。

您可以在 Spring Cloud Gateway 層級設定這些參數,而不是個別設定 sizetimeToLiveLocalResponseCache 。 此選項可讓您在一開始不指定這些值的情況下使用 LocalResponseCache 篩選,同時保留稍後覆寫這些值的彈性。

使用下列步驟在路由層級啟用回應快取,並設定 sizetimeToLive

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ]。
  2. 在 [ Spring Cloud Gateway ] 頁面上,選取 [ 組態]。
  3. 在 [回應快取] 區段中,選取 [啟用回應快取],然後將 [範圍] 設定[路由]。
  4. 設定 回應快取的大小存留 時間。
  5. 選取 [儲存]。

使用下列步驟來停用路由層級的回應快取,這會清除 sizetimeToLive

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ]。
  2. 在 [ Spring Cloud Gateway ] 頁面上,選取 [ 組態]。
  3. 在 [ 回應快取 ] 區段中,清除 [ 啟用回應快取]。
  4. 選取 [儲存]。

下列範例示範如何在 Spring Cloud 閘道層級設定 和 timeToLivesize使用LocalResponseCache篩選:

{
   "filters": [
      "<other-app-level-filter-of-route>",
   ],
   "routes": [
      {
        "predicates": [
            "Path=/api/path1/**",
            "Method=GET"
         ],
         "filters": [
            "<other-filter-of-route>",
            "LocalResponseCache"
         ],
      },
      {
        "predicates": [
            "Path=/api/path2/**",
            "Method=GET"
         ],
         "filters": [
            "<other-filter-of-route>",
            "LocalResponseCache=3m, 1MB"
         ],
      }
   ]
}

設定環境變數

Azure Spring Apps 服務會管理和調整 VMware Spring Cloud Gateway。 除了設定應用程式效能監視 (APM) 和記錄層級的使用案例之外,您通常不需要使用環境變數來設定 VMware Spring Cloud Gateway。

如果您有無法透過本文中所述的其他組態來滿足的需求,您可以嘗試設定 Common 應用程式屬性清單中所示的環境變數。 在將設定套用至生產環境之前,請務必先在測試環境中驗證您的組態。

若要在 Azure 入口網站 中設定環境變數,請使用下列步驟:

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ],然後選取 [ 組態]。
  2. 在 [屬性] 和 [秘密] 區段中填入環境變數的索引鍵/值組 您可以在 [ 秘密] 區 段中包含具有敏感性資訊的變數。
  3. 選取儲存以儲存變更。

更新環境變數之後,VMware Spring Cloud Gateway 會重新啟動。

設定應用程式效能監視

若要監視 VMware Spring Cloud 閘道,您可以設定 APM。 下表列出 VMware Spring Cloud Gateway 所提供的五種 APM Java 代理程式,以及其必要的環境變數。

JAVA 代理程式 必要的環境變數
Application Insights APPLICATIONINSIGHTS_CONNECTION_STRING
Dynatrace DT_TENANT
DT_TENANTTOKEN
DT_CONNECTION_POINT
New Relic NEW_RELIC_LICENSE_KEY
NEW_RELIC_APP_NAME
AppDynamics APPDYNAMICS_AGENT_APPLICATION_NAME
APPDYNAMICS_AGENT_TIER_NAME
APPDYNAMICS_AGENT_NODE_NAME
APPDYNAMICS_AGENT_ACCOUNT_NAME
APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY
APPDYNAMICS_CONTROLLER_HOST_NAME
APPDYNAMICS_CONTROLLER_SSL_ENABLED
APPDYNAMICS_CONTROLLER_PORT
彈性 APM ELASTIC_APM_SERVICE_NAME
ELASTIC_APM_APPLICATION_PACKAGES
ELASTIC_APM_SERVER_URL

如需其他支持的環境變數,請參閱下列來源:

若要在 VMware Spring Cloud Gateway 中啟用 APM 監視,您可以在服務實例層級上建立 APM 設定,並將其系結至 Spring Cloud Gateway。 如此一來,您就只能輕鬆地設定 APM 一次,並將相同的 APM 系結至 Spring Cloud 閘道和您的應用程式。

使用下列步驟來設定 APM,方法是使用 Azure 入口網站:

  1. 使用 APM 名稱、類型和屬性,在服務實例層級上設定 APM。 如需詳細資訊,請參閱如何設定 APM 整合和 CA 憑證的服務實例層級上管理 APM 一節。

    顯示 Azure Spring Apps APM 編輯器頁面之 Azure 入口網站 螢幕快照。

  2. 在瀏覽窗格中選取 [Spring Cloud Gateway ],然後選取 [APM]。

  3. 選擇 APM 參考名稱清單中的 APM 名稱 。 此清單包含步驟 1 中設定的所有 APM 名稱。

  4. 選取 [ 儲存] 將 APM 參考名稱系結至 Spring Cloud Gateway。 您的閘道會重新啟動以啟用 APM 監視。

在 VMware Spring Cloud Gateway 中管理 APM (已淘汰)

您可以使用 Azure 入口網站 或 Azure CLI 在 VMware Spring Cloud Gateway 中設定 APM。 您也可以指定要使用的 APM Java 代理程式類型,以及其支援的對應 APM 環境變數。

使用下列步驟來設定 APM,方法是使用 Azure 入口網站:

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ],然後選取 [ 組態]。
  2. 選擇 APM 清單中的 APM 類型來監視閘道。
  3. 在 [屬性] 和 [秘密] 區段中填入 APM 環境變數的索引鍵/值組 您可以將具有敏感性資訊的變數放在秘密
  4. 選取儲存以儲存變更。

更新設定可能需要幾分鐘的時間。 當組態完成時,您應該會收到通知。

注意

Azure Spring Apps 會升級 APM 代理程式和部署的應用程式,其頻率相同,以保持 VMware Spring Cloud Gateway 與 Azure Spring Apps 之間的代理程式相容性。

根據預設,Azure Spring Apps 會將 APM Java 代理程式的記錄列印至 STDOUT。 這些記錄隨附於 VMware Spring Cloud 閘道記錄中。 您可以檢查記錄中使用的 APM 代理程式版本。 您可以在 Log Analytics 中查詢這些記錄以進行疑難解答。

若要讓 APM 代理程式正常運作,請增加 VMware Spring Cloud Gateway 的 CPU 和記憶體。

設定記錄層級

您可以使用下列方式設定 VMware Spring Cloud Gateway 的記錄層級,以取得更多詳細數據或減少記錄:

  • 您可以將記錄層級設定為TRACE、、DEBUGINFOWARNERROROFF。 VMware Spring Cloud Gateway 的默認記錄層級為 INFO
  • 您可以將記錄層級設定為 OFF來關閉記錄。
  • 當記錄層級設定為 WARNERROROFF時,您可能需要在向 Azure Spring Apps 小組要求支援時將其調整為 INFO 。 此變更會導致重新啟動 VMware Spring Cloud Gateway。
  • 當記錄層級設定為 TRACEDEBUG時,可能會影響 VMware Spring Cloud Gateway 的效能。 請嘗試在生產環境中避免這些設定。
  • 您可以設定記錄器或特定記錄器的記錄層級 root ,例如 io.pivotal.spring.cloud.gateway

下列記錄器可能包含和 DEBUG 層級的TRACE寶貴疑難解答資訊:

記錄器 描述
io.pivotal.spring.cloud.gateway 篩選和述詞,包括自定義延伸模組
org.springframework.cloud.gateway API 閘道
org.springframework.http.server.reactive HTTP 伺服器互動
org.springframework.web.reactive API 閘道反應式流程
org.springframework.boot.autoconfigure.web API 閘道自動設定
org.springframework.security.web 驗證和授權資訊
reactor.netty Reactor Netty

若要取得環境變數密鑰,請新增 logging.level. 前置詞,然後藉由設定環境 logging.level.{loggerName}={logLevel}來設定記錄層級。 下列範例顯示 Azure 入口網站 和 Azure CLI 的步驟。

若要在 Azure 入口網站 中設定記錄層級,請使用下列步驟:

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ],然後選取 [ 組態]。
  2. 在 [屬性] 和 [秘密] 區段中填入記錄層級環境變數的索引鍵/值組 如果您的案例中記錄層級是敏感性資訊,您可以使用 [秘密] 區段來包含它
  3. 選取儲存以儲存變更。

顯示用來設定記錄層級之 Spring Cloud Gateway 環境變數之 Azure 入口網站 的螢幕快照。

更新附加元件設定

附加元件元件可讓您使用 JSON 格式字串自定義 VMware Spring Cloud Gateway 的特定屬性。 當您需要設定未透過 REST API 公開的屬性時,此功能很有用。

附加元件元件組態是 JSON 物件,其中包含代表所需組態的索引鍵/值組。 下列範例顯示 JSON 格式的結構:

{
    "<addon-key-name>": {
        "<addon-key-name>": "<addon-value>"
        ...
    },
    "<addon-key-name>": "<addon-value>",
    ...
}

下列清單顯示附加元件索引鍵名稱和實值類型的支援附加元件元件元件組態。 當我們升級 VMware Spring Cloud Gateway 版本時,此列表可能會變更。

  • SSO 組態:

    • 機碼名稱: sso

    • 實值類型:物件

    • 屬性:

      • RolesAttributeName (字串):指定屬性的名稱,其中包含與 SSO 工作階段相關聯的角色。
      • InactiveSessionExpirationInMinutes (整數):指定非使用中 SSO 工作階段的到期時間,以分鐘為單位。 值 0 表示會話永遠不會過期。
    • 範例:

      {
          "sso": {
              "rolesAttributeName": "roles",
              "inactiveSessionExpirationInMinutes": 1
          }
      }
      
  • 元數據組態:

    • 機碼名稱: api

    • 實值類型:物件

    • 屬性

      • groupId (字串):VMware Spring Cloud Gateway 實例上可用 API 群組的唯一標識符。 值只能包含小寫字母和數位。
    • 範例:

      {
          "api": {
              "groupId": "id1"
          }
      }
      

使用下列步驟來更新附加元件組態。

  1. 在您的 Azure Spring Apps 實例中,選取 瀏覽窗格中的 [Spring Cloud Gateway ],然後選取 [ 組態]。
  2. 指定 Addon ConfigsJSON 值。
  3. 選取 [儲存]。

下一步