Apigee 的已知問題

您目前查看的是 Apigee Edge 說明文件。
前往 Apigee X 說明文件
info

以下各節說明 Apigee Edge 和 Edge for Private Cloud 的已知問題。在大多數情況下,我們會在日後推出的版本中修正所列問題。

Miscellaneous Edge known issues

The following sections describe miscellaneous known issues with Edge.

Area/Summary Known issues
Cache expire results in incorrect cachehit value

When the cachehit flow variable is used after the LookupCache policy, due to the way debug points are dispatched for asynchronous behavior, the LookupPolicy populates the DebugInfo object before the call back has executed, resulting in an error.

Workaround: Repeat the process (make second call) again right after the first call.

Setting InvalidateCache Policy PurgeChildEntries to true does not work correctly

Setting PurgeChildEntries in the InvalidateCache policy should purge the KeyFragment element values only but clears the entire cache.

Workaround: Use the KeyValueMapOperations policy to iterate cache versioning and bypass the need for cache invalidation.

Concurrent deployment requests for a SharedFlow or API proxy can result in an inconsistent state in the Management Server where multiple revisions are shown as deployed.

This can happen, for example, when concurrent runs of a CI/CD deployment pipeline occur using different revisions. To avoid this problem, avoid deploying API proxies or SharedFlows before the current deployment is complete.

Workaround: Avoid concurrent API proxy or SharedFlow deployments.

API call counts shown in Edge API Analytics might contain duplicate data.

Edge API Analytics can sometimes contain duplicate data for API calls. In that case the counts shown for API calls in Edge API Analytics are higher than the comparable values shown in third-party analytics tools.

Workaround: Export the analytics data and use the gateway_flow_id field to de-duplicate the data.

Known issues with the Edge UI

The following sections describe the known issues with the Edge UI.

Area/Summary Known issues
Can't access Edge SSO Zone Administration page from navigation bar after organization is mapped to an identity zone

When you connect an organization to an identity zone, you can no longer access the Edge SSO Zone Administration page from the left navigation bar by selecting Admin > SSO.

Workaround: Navigate to the page directly using the following URL: https://apigee.com/sso

Edge UI TLS Configuration

The options TLS_DISABLED_ALGO and TLS_ENABLED_CIPHERS do not function correctly.

Workaround: Follow the steps below to enable specific ciphers for the Edge UI:

  1. Open the /opt/apigee/etc/edge-ui.d/SSL.sh config file.
  2. Add the property -Djdk.tls.server.cipherSuites with a comma-separated list of cipher suites in IANA notation inside the UI_OPTIONS. For example:
    UI_OPTIONS=" -Dhttp.port=disabled -Dhttps.port=9433 -Dhttps.keyStoreType=JKS -Dhttps.keyStore=/opt/apigee/customer/conf/keystore.jks -Dplay.http.sslengineprovider=services.CustomSSLEngineProvider -Dhttps.keyStorePasswordEncrypted=mypass -Djdk.tls.server.cipherSuites=TLS_RSA_WITH_AES_256_CBC_SHA256,TLS_RSA_WITH_AES_256_GCM_SHA384"
  3. Save your changes to the config file.
  4. Restart the Edge UI:
    /opt/apigee/apigee-service/bin/apigee-service edge-ui restart

Known issues with the integrated portal

The following sections describe the known issues with the integrated portal.

Area Known issues
SmartDocs
  • Apigee Edge supports OpenAPI Specification 3.0 when you create specifications using the spec editor and publish APIs using SmartDocs on your portal, though a subset of features are not yet supported.

    For example, the following features from the OpenAPI Specification 3.0 are not yet supported:

    • allOf properties for combining and extending schemas
    • Remote references

    If an unsupported feature is referenced in your OpenAPI Specification, in some cases the tools will ignore the feature but still render the API reference documentation. In other cases, an unsupported feature will cause errors that prevent the successful rendering of the API reference documentation. In either case, you will need to modify your OpenAPI Specification to avoid use of the unsupported feature until it is supported in a future release.

    Note: Because the spec editor is less restrictive than SmartDocs when rendering API reference documentation, you may experience different results between the tools.

  • When using Try this API in the portal, the Accept header is set to application/json regardless of the value set for consumes in the OpenAPI Specification.
  • 138438484: Multiple servers are not supported.
SAML identity provider Single logout (SLO) with the SAML identity provider is not supported for custom domains. To enable a custom domain with a SAML identity provider, leave the Sign-out URL field blank when you configure SAML settings.
Portal admin
  • Simultaneous portal updates (such as page, theme, CSS, or script edits) by multiple users is not supported at this time.
  • If you delete an API reference documentation page from the portal, there is no way to recreate it; you'll need to delete and re-add the API product, and regenerate the API reference documentation.
  • When configuring the content security policy, it may take up to 15 minutes for changes to fully apply.
  • When customizing your portal theme, it may take up to 5 minutes for changes to fully apply.
Portal features
  • Search will be integrated into the integrated portal in a future release.

Edge for Private Cloud 的已知問題

以下各節說明 Edge for Private Cloud 的已知問題。

已知問題
Edge for Private Cloud 4.53.01 NGINX 安全漏洞評估 (CVE-2026-42945)

我們發現一項影響 NGINX 中 ngx_http_rewrite_module 的安全漏洞 (CVE-2026-42945)。由於這個模組會靜態編譯到 NGINX 中,因此安全掃描工具可能會標記 Apigee Edge for Private Cloud 隨附的 NGINX 二進位檔。

對 Apigee Edge Private Cloud 的影響:

在預設出貨設定中,Apigee Edge for Private Cloud「不會」受到這項安全漏洞影響。CVE-2026-42945 的可利用性取決於特定的 NGINX 設定模式,特別是在特定序列中使用 rewrite 指令。任何標準的 Apigee Edge for Private Cloud NGINX 設定中,都不會出現這些模式。

敬請採取行動:

  • 預設 Apigee Edge for Private Cloud 設定:不需要修補程式、升級或作業變更。對於預設安裝,掃描器發現的 CVE-2026-42945 相關問題可視為誤報。您可以在安全漏洞管理系統中使用下列文字,記錄這項例外狀況:

    CVE-2026-42945 — Accepted exception (false positive for Apigee Edge for Private Cloud). Apigee Edge for Private Cloud does not use the rewrite directive in any shipped NGINX configuration. The vulnerable code path in ngx_http_rewrite_module is configuration-gated and is not reachable in the default Apigee Edge for Private Cloud deployment.

  • 自訂 NGINX 設定:如果您已在 Apigee Edge for Private Cloud 安裝中手動修改 NGINX 設定檔 (例如在 /opt/nginx 下),請執行下列自我檢查,確保自訂項目不會意外導入有安全漏洞的模式:
    1. 檢查重新編寫指令:在每個 NGINX 節點上執行下列指令:
      sudo grep -rnI '^\s*rewrite\b' /opt/nginx
    2. 分析結果:
      • 如果指令未傳回任何輸出內容,表示系統未受影響
      • 如果找到相符項目,請逐一檢查。只有在特定區塊符合以下「所有」條件時,才表示存在安全漏洞:
        • 使用 rewrite 指令。
        • 同一設定區塊中緊接著出現另一個 rewriteifset 指令。
        • 指令中使用了未命名的 PCRE 擷取群組 (例如 $1$2 等)。
        • 指令中的取代字串含有問號 (?)。
    3. 緩解措施 (如有漏洞):如果自訂設定的任何部分符合上述所有條件,請採取下列緩解措施:
      • 從取代字串中移除問號 (?)。
      • 使用具名 PCRE 擷取群組,而非未命名的群組。
      • 重新評估是否需要鏈結指令。
Edge for Private Cloud 4.53.00 440148595:過度顯示終止支援彈出式警告

在 Edge for Private Cloud 4.53.00 以上版本中,使用者介面會顯示「系統不再支援」(EOL) 警告彈出式視窗。這項警告會重複出現
,且無法避免或降低出現頻率。

目前使用者無法停用或降低這類終止支援警告的顯示頻率。

Edge for Private Cloud 4.53.01 Java 標註

如果客戶 Java 呼叫嘗試使用「BC」名稱載入 Bouncy Castle 密碼編譯供應商,可能會失敗,因為預設供應商已變更為 Bouncy Castle FIPS,以支援 FIPS。請使用新的供應商名稱「BCFIPS」

Edge for Private Cloud 4.53.00 Java 標註

如果客戶 Java 呼叫嘗試使用「BC」名稱載入 Bouncy Castle 密碼編譯供應商,可能會失敗,因為預設供應商已變更為 Bouncy Castle FIPS,以支援 FIPS。請使用新的供應商名稱「BCFIPS」

Edge for Private Cloud 4.52.01 Mint 更新

只有在 Edge for Private Cloud 安裝作業中使用 MINT 或啟用 MINT 的使用者,才會受到這個問題影響。

受影響的元件:edge-message-processor

問題:如果已啟用營利功能,並安裝 4.52.01 版 (全新安裝) 或從先前的私有雲版本升級,您會遇到訊息處理器問題。開放執行緒數量會逐漸增加,導致資源耗盡。edge-message-processor system.log 中會出現下列例外狀況:

Error injecting constructor, java.lang.OutOfMemoryError: unable to create new native thread
Apigee HTTP/2 漏洞

最近在多個 HTTP/2 通訊協定實作項目中發現阻斷服務 (DoS) 安全漏洞 (CVE-2023-44487),包括 Apigee Edge for Private Cloud。這項安全漏洞可能會導致 Apigee API 管理平台功能發生 DoS 攻擊。詳情請參閱 Apigee 安全性公告 GCP-2023-032

Edge for Private Cloud 路由器管理伺服器元件會公開至網際網路,因此可能存在安全漏洞。雖然在 Edge for Private Cloud 的其他 Edge 專屬元件管理連接埠上已啟用 HTTP/2,但這些元件都不會公開至網際網路。在 Cassandra、Zookeeper 等非 Edge 元件上,系統不會啟用 HTTP/2。建議您採取下列步驟,解決 Edge for Private Cloud 安全漏洞:

如果您使用 Edge Private Cloud 4.51.00.11 以上版本,請按照下列步驟操作:

  1. 更新管理伺服器:

    1. 在每個管理伺服器節點上,開啟 /opt/apigee/customer/application/management-server.properties
    2. 在屬性檔案中新增下列這行程式碼:
      conf_webserver_http2.enabled=false
    3. 重新啟動管理伺服器元件:
      apigee-service edge-management-server restart
  2. 更新訊息處理器:

    1. 在每個訊息處理器節點上,開啟 /opt/apigee/customer/application/message-processor.properties
    2. 在屬性檔案中新增下列這行程式碼:
      conf_webserver_http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-message-processor restart
  3. 更新路由器:

    1. 在每個路由器節點上,開啟 /opt/apigee/customer/application/router.properties
    2. 在屬性檔案中新增下列這行程式碼:
      conf_webserver_http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-router restart
  4. 更新 QPID:

    1. 在每個 QPID 節點上,開啟 /opt/apigee/customer/application/qpid-server.properties
    2. 在屬性檔案中新增下列這行程式碼:
      conf_webserver_http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-qpid-server restart
  5. 更新 Postgres:

    1. 在每個 Postgres 節點上,開啟 /opt/apigee/customer/application/postgres-server.properties
    2. 在屬性檔案中新增下列這行程式碼:
      conf_webserver_http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-postgres-server restart

如果使用的 Edge for Private Cloud 版本舊於 4.51.00.11,請按照下列步驟操作:

  1. 更新管理伺服器:

    1. 在每個管理伺服器節點上,開啟 /opt/apigee/customer/application/management-server.properties
    2. 在屬性檔案中新增下列兩行:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. 重新啟動管理伺服器元件:
      apigee-service edge-management-server restart
  2. 更新訊息處理器:

    1. 在每個訊息處理器節點上,開啟 /opt/apigee/customer/application/message-processor.properties
    2. 在屬性檔案中新增下列兩行:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-message-processor restart
  3. 更新路由器:

    1. 在每個路由器節點上,開啟 /opt/apigee/customer/application/router.properties
    2. 在屬性檔案中新增下列兩行:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-router restart
  4. 更新 QPID:

    1. 在每個 QPID 節點上,開啟 /opt/apigee/customer/application/qpid-server.properties
    2. 在屬性檔案中新增下列兩行:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-qpid-server restart
  5. 更新 Postgres:

    1. 在每個 Postgres 節點上,開啟 /opt/apigee/customer/application/postgres-server.properties
    2. 在屬性檔案中新增下列兩行:
      conf_webserver_http2.enabled=false
      conf/webserver.properties+http2.enabled=false
    3. 重新啟動訊息處理器元件:
      apigee-service edge-postgres-server restart
更新至 4.52 版時升級 Postgresql

Apigee-postgresql 無法從 Edge for Private Cloud 4.50 或 4.51 版升級至 4.52 版。如果資料表數量超過 500 個,就可能發生問題。

您可以執行下列 SQL 查詢,查看 Postgres 中的資料表總數:

select count(*) from information_schema.tables

解決方法: 將 Apigee Edge 4.50.00 或 4.51.00 更新至 4.52.00 時, 請務必先執行 初步步驟,再升級 Apigee-postgresql。

LDAP 政策

149245401:透過 LDAP 資源設定的 JNDI LDAP 連線集區設定不會反映,且 JNDI 預設值每次都會造成單次使用的連線。因此,每次都會開啟及關閉連線以供單次使用,每小時會建立大量連線至 LDAP 伺服器。

解決方法:

如要變更 LDAP 連線集區屬性,請按照下列步驟,為所有 LDAP 政策設定全域變更。

  1. 如果設定屬性檔案不存在,請建立一個:
    /opt/apigee/customer/application/message-processor.properties
  2. 將下列內容加入檔案 (根據 LDAP 資源設定需求,取代 Java Naming and Directory Interface (JNDI) 屬性的值)。
    bin_setenv_ext_jvm_opts="-Dcom.sun.jndi.ldap.connect.pool.maxsize=20
    -Dcom.sun.jndi.ldap.connect.pool.prefsize=2
    -Dcom.sun.jndi.ldap.connect.pool.initsize=2
    -Dcom.sun.jndi.ldap.connect.pool.timeout=120000
    -Dcom.sun.jndi.ldap.connect.pool.protocol=ssl"
  3. 請確認檔案 /opt/apigee/customer/application/message-processor.properties 的擁有者是 apigee:apigee。
  4. 重新啟動每個訊息處理器。

如要確認連線集區 JNDI 屬性是否生效,可以執行 tcpdump,觀察 LDAP 連線集區的行為。

要求處理延遲時間過長

139051927:訊息處理器中發現高代理伺服器處理延遲,影響所有 API Proxy。症狀包括處理時間比正常 API 回應時間延遲 200 到 300 毫秒,即使 TPS 較低,也可能隨機發生。如果訊息處理器建立連線的目標伺服器超過 50 個,就可能發生這種情況。

根本原因: 訊息處理器會保留快取,將目標伺服器網址對應至 HTTPClient 物件,以連線至目標伺服器。這項設定的預設值為 50,對大多數部署作業來說可能過低。如果部署作業在設定中有多個機構/環境組合,且目標伺服器總數超過 50 個,目標伺服器網址就會持續從快取中逐出,導致延遲。

驗證: 如要判斷目標伺服器網址逐出是否導致延遲問題,請在訊息處理器系統記錄中搜尋關鍵字「onEvict」或「Eviction」。如果記錄中出現這些關鍵字,表示目標伺服器網址因快取大小過小,而遭到 HTTPClient 快取逐出。

解決方法: 如果是 Edge for Private Cloud 19.01 和 19.06 版,您可以編輯及設定 HTTPClient 快取,/opt/apigee/customer/application/message-processor.properties

conf/http.properties+HTTPClient.dynamic.cache.elements.size=500

然後重新啟動訊息處理工具。對所有訊息處理器進行相同變更。

值 500 僅為範例。設定的最佳值應大於訊息處理器連線的目標伺服器數量。將這個屬性設得更高不會產生副作用,只會改善訊息處理器 Proxy 要求處理時間。

注意:Edge for Private Cloud 50.00 版的預設設定為 500。

鍵/值對應的多個項目

157933959:如果同時插入及更新相同鍵/值對應 (KVM),且範圍限定在機構或環境層級,就會導致資料不一致,並遺失更新。

注意:這項限制僅適用於私有雲專用的 Edge。公有雲和混合式專用的 Edge 沒有這項限制。

如要解決 Edge for Private Cloud 的問題,請在 apiproxy 範圍建立 KVM。