Apigee 的已知問題

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

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

Edge 其他已知問題

以下各節說明 Edge 的各種已知問題。

區域/摘要 已知問題
快取過期導致 cachehit 值不正確

cachehit 資料流變數在 LookupCache 政策後使用時,由於偵錯點會以非同步行為方式調度,LookupPolicy 會在執行回呼之前填入 DebugInfo 物件,導致發生錯誤。

解決方法:在第一次呼叫後,立即重複該程序 (進行第二次呼叫)。

將 InvalidateCache Policy PurgeChildEntries 設為 true 無法正常運作

在 InvalidateCache 政策中設定 PurgeChildEntries 應只清除 KeyFragment 元素值,但會清除整個快取。

解決方法:使用 KeyValueMapOperations 政策執行快取版本化作業,並略過快取失效的必要性。

針對 SharedFlow 或 API proxy 提出的並行部署要求,可能會導致管理伺服器中的狀態不一致,顯示多個已部署的修訂版本。

舉例來說,如果 CI/CD 部署管道同時執行不同修訂版本,就可能發生這種情況。為避免這個問題,請勿在目前部署作業完成前,部署 API Proxy 或 SharedFlow。

解決方法:避免同時部署 API Proxy 或 SharedFlow。

Edge API Analytics 中顯示的 API 呼叫次數可能包含重複資料。

Edge API Analytics 有時會包含 API 呼叫的重複資料。在這種情況下,Edge API Analytics 中顯示的 API 呼叫計數會高於第三方分析工具中顯示的類似值。

解決方法: 匯出 Analytics 資料,然後使用 gateway_flow_id 欄位來移除資料重複項目。

Edge UI 的已知問題

以下各節說明 Edge UI 的已知問題。

領域/摘要 已知問題
機構對應至身分識別區域後,無法從導覽列存取 Edge SSO 區域管理頁面

將機構連結至身分識別區域後,您就無法再透過選取「管理」>「SSO」,從左側導覽列存取 Edge SSO 區域管理頁面。

解決方法:使用下列網址直接前往該頁面: https://apigee.com/sso

Edge UI TLS 設定

TLS_DISABLED_ALGO」和「TLS_ENABLED_CIPHERS」選項無法正常運作。

解決方法:請按照下列步驟,為 Edge UI 啟用特定密碼:

  1. 開啟 /opt/apigee/etc/edge-ui.d/SSL.sh 設定檔。
  2. UI_OPTIONS 中新增 -Djdk.tls.server.cipherSuites 屬性,並以半形逗號分隔 IANA 標記中的密碼編譯套件清單。例如:
    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. 儲存對設定檔所做的變更。
  4. 重新啟動 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。