Edge Microgateway 版本資訊

查看 Apigee Edge 說明文件。
前往 Apigee X說明文件
資訊

3.3.x 版

錯誤修正和強化功能 3.3.x 版

3.3.3

我們在 2024 年 4 月 25 日發布下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.3.3 3.3.3 3.3.3 3.3.3 3.2.2

修正錯誤及強化功能:

問題 ID 類型 說明
315939218 已移除

Eureka 用戶端外掛程式已從 Edge Microgateway 中移除。移除此項目 功能不會影響 Edge Microgateway 核心功能,也不會影響目標網址重寫功能。 詳情請參閱「重寫外掛程式中的目標網址」。

283947053 已移除

已從 Edge Microgateway 中移除對 forever-monitor 的支援功能。個人中心 可將 forever-monitor 替換為 PM2。詳情請參閱這個 Apigee 社群貼文:Edgemicro + PM2:啟動 Edgemicro 服務

已修正安全性問題

  • CVE-2023-0842
  • CVE-2023-26115
  • CVE-2022-25883
  • CVE-2017-20162
  • CVE-2022-31129
  • CVE-2022-23539
  • CVE-2022-23541
  • CVE-2022-23540
  • CVE-2024-21484
  • CVE-2022-46175
  • CVE-2023-45133
  • CVE-2020-15366
  • CVE-2023-26136
  • CVE-2023-26115

3.3.2

我們在 2023 年 8 月 18 日發布下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.3.2 3.3.2 3.3.2 3.3.2 3.2.2

修正錯誤及強化功能:

問題 ID 類型 說明
296187679 功能

支援的 Node.js 版本:16、18 和 20。 自 3.3.2 版起,Edge Microgateway CLI 指令僅適用於支援的版本。執行中 系統不支援版本的 CLI 指令會導致錯誤。 另請參閱 Apigee 支援的軟體和支援的版本

283947053 錯誤

Edge Microgateway 傳回第一個 API 產品的問題 列出與應用程式相關聯的 API 產品。現在我們要決定正確的 API 產品 會根據要求傳回

274443329 錯誤

已修正 Docker 提取過時映像檔版本的問題。 Docker 節點版本已更新至 Node.js 版本 18。現在我們建構 Docker 第 18.17-buster-slim 版映像檔。

已修正安全性問題

無。

3.3.1

我們在 2022 年 6 月 7 日發布下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.3.1 3.3.1 3.3.1 3.3.1 3.2.2

修正錯誤及強化功能:

問題 ID 類型 說明
220885293 功能

現已支援 Node.js 16 版。

231972608 錯誤

修正 private configure 的問題 指令在嘗試設定私有雲時出現錯誤。

233315475 錯誤

修正 json2xml 外掛程式轉換時擲回剖析錯誤的問題 會從 JSON 到 XML 的回應,且與 accumulate-response 外掛程式搭配使用時。

221432797 變更

基本 Edge Microgateway 映像檔的 Docker Node.js 版本已升級至 Node.js 14。

215748732 功能

revokekeys 指令已新增 SAML 權杖驗證的支援。

現在您可以在 revokekeys 指令中使用 -t 選項傳送 SAML 權杖,而不是使用者名稱和密碼憑證。

詳情請參閱指令列參考資料

218723889 文件更新

說明文件已更新,加入支援的 Edge Microgateway 連結 儲存在 GitHub 中的外掛程式。請參閱 Edge Microgateway 隨附的現有外掛程式

已修正安全性問題

問題 ID 說明
CVE-2021-23413 這會影響 3.7.0 之前的 jszip 套件。使用檔案名稱製作新的 ZIP 檔案 設為物件原型值 (例如 proto、toString 等) 將會產生傳回的物件 並使用修改後的原型執行個體

3.3.0

我們在 2022 年 2 月 4 日發布下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.3.0 3.3.0 3.3.0 3.3.0 3.2.2

修正錯誤及強化功能:

問題 ID 類型 說明
219556824 已知問題 Edge Microgateway Gateway 3.3.0 與 npm 稽核修正指令不相容。

執行 npm audit fix 會導致 apigeetool 升級至 0.15.2,而此方法 會影響 edgemicro upgradeauth 指令

如果您執行 npm audit fix 並後續執行 edgemicro upgradeauth, 會看到以下錯誤:

Error: This method has been removed in JSZip 3.0, please check the upgrade guide.

如要修正問題,請執行下列指令: 指令還原 apigeetool 的正確版本:

npm install apigeetool@0.15.1
敬上

我們將在日後的 Edge Microgateway 中解決這個問題。

138622990 功能

配額外掛程式 isHTTPStatusTooManyRequestEnabled 的新旗標 這會設定外掛程式傳回 HTTP 429 回應狀態,而不是狀態 403 ( 因而違反配額問題。請參閱配額設定選項

192534424 錯誤

已修正 Apigee 數據分析中顯示的回應代碼不一致的問題 Edge Microgateway 回應代碼。

198986036 強化項目 Edge Microgateway 現在會在每個輪詢時間間隔中擷取識別資訊提供者 (IDP) 的公開金鑰,並在 IdP 的公開金鑰變更時更新金鑰。 先前,如果 IDP 的公開金鑰有所變更,extauth 外掛程式會在未重新載入 Edge Microgateway 的情況下更新公開金鑰。
168713541 錯誤

強化說明文件,說明如何為多個目標設定 TLS/SSL。 請參閱使用用戶端 SSL/TLS 選項

171538483 錯誤

說明文件已變更為修正記錄檔的命名慣例。詳情請見 記錄檔命名慣例

157908466 錯誤

說明文件已變更,正確說明如何安裝特定版本的 Edge Microgateway。請參閱「在有網際網路連線的情況下升級 Edge Microgateway」。

215748427 錯誤 修正撤銷金鑰指令時傳回錯誤的問題 使用現有的金鑰和密鑰配對建立金鑰
205524197 錯誤 說明文件已更新,納入完整的記錄層級清單。請參閱 edgemicro 屬性如何設定記錄層級

版本 3.2.x

錯誤修正和強化功能 3.2.x 版

3.2.3

我們在 2021 年 9 月 17 日發布了下列 Edge 修正及強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.2.3 3.2.3 3.2.3 3.2.3 3.2.2

修正錯誤及強化功能:

問題 ID 類型 說明
192416584 功能

disableStrictLogFile 設定屬性可讓您 對應用程式記錄檔 api-log.log 授予嚴格的檔案權限。適用對象 詳情請參閱如何放寬記錄檔權限

192799989 功能

on_target_response_abort 設定屬性可讓您控制 在用戶端 (Edge Microgateway) 與 目標伺服器即將關閉。詳情請參閱 edgemicro 屬性

148062415 錯誤 已修正 Docker 容器結構定義中 Edge Microgateway 未關閉的問題 使用 docker stop {containerId} 指令妥善關閉。流程 已終止,但 .sock.pid 個檔案未移除。現在 即可移除這類檔案,重新啟動同一個容器則能如預期運作。
190715670 錯誤 修正在內部重新載入活動期間,部分要求停滯的問題 微型門號。這個問題間歇性發生,在高流量的情況下發生。 該問題在 tokenCachecacheKey 特徵的 使用 OAuth 外掛程式。
183910111 錯誤 已修正以斜線結尾的資源路徑網址有誤的問題 會解讀為個別資源路徑舉例來說 系統會將 /country/all/country/all/ 解讀為相同內容 路徑。

已修正安全性問題

問題 ID 說明
CVE-2020-28503 2.0.5 之前的套件複製 Props 容易透過主要功能進行原型汙染。
CVE-2021-23343 所有套件路徑剖析版本都很容易受到 透過 SplitDeviceRe、SplitTailRe 和 splitPathRe 規則運算式的服務 (ReDoS)。 ReDoS 具備多項作業最差的時間複雜性,

3.2.2

2021 年 7 月 15 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.2.2 3.2.2 3.2.2 3.2.2 3.2.2

修正錯誤及強化功能:

問題 ID 類型 說明
185323500 變更

expires_in 值已從字串變更為整數

權杖要求和更新權杖要求 API 現在會傳回 expires_in,做為 以秒為單位指定的整數值。

遵守 RFC 6749 OAuth 2.0 授權架構 expires_in 設定參數的預期值已變更 從字串到整數詳情請參閱作業和設定參考資料

188492065 變更 終止支援 Node.js 8

從版本 3.2.2 開始,系統不再支援 Node.js 8。如要 詳情請參閱支援 軟體和支援的版本:Edge Microgateway

183990345 功能 設定 Docker 容器的記錄輸出

Edge Microgateway 設定參數 to_console 您可以選擇將記錄資訊傳送到標準輸出,而不是記錄檔。如果您按照步驟在 Docker 容器中執行 Edge Microgateway,容器預設會將 stdout 和錯誤輸出內容重新導向至位於容器中的檔案:${APIGEE_ROOT}/logs/edgemicro.log

為避免將記錄資訊傳送至 edgemicro.log,請在執行容器時使用新的 LOG_CONSOLE_OUTPUT_TO_FILE 變數。

如要進一步瞭解如何使用這個新變數,請參閱使用 Docker for Edge Microgateway 一文。

183057665 功能 edgemicro.pidedgemicro.sock 檔案路徑設為可設定。

用於執行 Docker 容器的新 -w, --workdir 參數 Edge Microgateway 可讓您指定指向 edgemicro.sockedgemicro.pid 檔案應為 在 Docker 容器中建立請參閱針對 Edge Microgateway 使用 Docker 一文。

191352643 功能 Edge Microgateway 的 Docker 映像檔已更新為使用 NodeJS 12.22 版。 請參閱針對 Edge Microgateway 使用 Docker 一文。

已修正安全性問題

問題 ID 說明
CVE-2021-28860 在 Node.js Mixme 中,v0.5.1 之前版本,攻擊者可以新增或修改 透過「__proto__」存取物件透過 mut() 和 merge() 函式汙染 屬性將直接指派給程式中的每個物件。這將 確保程式可用性,可能導致服務阻斷 (DoS)。
CVE-2021-30246 在 jsrsasign 套件至 10.1.13 (適用於 Node.js) 中,有些無效的 RSA PKCS#1 因為 v1.5 簽章錯誤而遭誤認為有效。注意:目前還沒有人知道 實際攻擊
CVE-2021-23358 套件底線介於 1.13.0-0 和 1.13.0-2 之前,1.3.2 及之前 1.12.1 容易受到範本函式中的任意程式碼注入, 特別是當變數屬性做為引數傳遞時,它並未經過處理。
CVE-2021-29469 Node-redis 是 Node.js Redis 用戶端,在 3.1.1 版之前,期間 監控模式,規則運算式開始用來偵測到監控訊息, 在某些字串上進行指數反向追蹤。這個問題可能導致 課程中也會快速介紹 Memorystore 這是 Google Cloud 的全代管 Redis 服務這個問題已在 3.1.1 版中修補完畢。
CVE-2020-8174 Docker 映像檔已更新為使用 Node.js 12.22 版

3.2.1

我們在 2021 年 3 月 5 日星期五發布下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.2.1 3.2.1 3.2.1 3.2.1 3.2.1

修正錯誤及強化功能:

問題 ID 類型 說明
180362102 錯誤 先前如果 JWK 金鑰的值為空值,就會導致應用程式失敗,這個問題現已修正。

系統現在會處理空值條件,避免在 jwkPublicKeys 中傳遞空值。

注意:您必須升級 edgemicro-auth Proxy,才能修正這項錯誤。

179971737 錯誤 問題已修正,系統將目標 4XX / 5XX 狀態回應記錄為 Proxy edgemicro_* Proxy 錯誤。

對於 Edge Microgateway 交易,顯示了不正確的目標錯誤計數 Apigee Edge 錯誤代碼分析資訊主頁目標錯誤的錯誤代碼 就算是 Proxy 錯誤此問題已解決,指定目標正確無誤 現已顯示錯誤計數。

179674670 功能 新增一項功能,可篩選已設置的 API 產品清單 在 JWT 中以產品狀態碼為依據。

API 產品有三種狀態碼,分別是「待處理」、「已核准」和「已撤銷」。 名為 allowProductStatus 的新屬性已新增至以下項目的設定 JWT 變數政策中: edgemicro-auth Proxy。如要使用這項資源 篩選 JWT 中列出的 API 產品:

  1. 在 Apigee Proxy 編輯器中開啟 edgemicro-auth Proxy。
  2. 在 SetJWTVariables 政策的 XML 中新增 allowProductStatus 屬性,並指定 要篩選的狀態碼清單 (以半形逗號分隔)。例如,篩選「待處理」 和「已撤銷」狀態:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <Javascript timeLimit="20000" async="false" continueOnError="false"
        enabled="true" name="Set-JWT-Variables">
        <DisplayName>Set JWT Variables</DisplayName>
        <FaultRules/>
        <Properties>
            <Property name="allowProductStatus">Pending,Revoked</Property>
        </Properties>
        <ResourceURL>jsc://set-jwt-variables.js</ResourceURL>
    </Javascript>
    
    

    如果希望「已核准」產品只顯示在清單中,請設定資源 如下所示:

    <Property name="allowProductStatus">Approved</Property>
  3. 儲存 Proxy。

    如未出現 Property 標記,則具備所有狀態碼的產品, 列在 JWT 中

    如要使用這項新屬性,您必須升級 edgemicro-auth Proxy。

178423436 錯誤 您可以在 CLI 中或透過環境變數傳遞金鑰和密鑰值 載入程序探索工具的指令列引數中。

Edge Microgateway 金鑰和密鑰值以下記錄的問題已回報 或透過環境變數設定 啟動後,系統會在節點工作站/子程序的引數中顯示 微型閘道

為了修正環境變數的情況,系統已不再顯示相關值 寫入程序探索工具的指令列引數中

啟動微閘道時,如果指令列中已傳遞金鑰和密鑰值, 該設定會取代任何環境變數值 (如有設定)。在此情況下,指定值 顯示在程序探索工具的指令列引數中。

178341593 錯誤 已修正 apikeys 外掛程式的說明文件錯誤。

apikeys 的 README 檔案 外掛程式誤將 gracePeriod 資源。我們已將這項資源及其說明從 README 中移除。

gracePeriod 屬性是在 oauth 外掛程式中實作。目的地: 使用寬限期功能,則必須使用 OAuth 外掛程式。

179366445 錯誤 已解決所有 GET 要求捨棄酬載的問題 再新增至指定目標

您可以使用新的設定參數 edgemicro: enable_GET_req_body 控制所需行為。 設為 true 時,要求標頭 transfer-encoding: chunked 都會加到所有 GET 要求,且 GET 酬載 (如有) 會傳送至目標。如果 false (預設值),表示在要求前,酬載會無訊息移除 傳送給目標

例如:

edgemicro:
 enable_GET_req_body: true

根據 RFC 7231,4.3.1 節:GET, GET 要求酬載沒有定義語意 才能傳送給目標

3.2.0

2021 年 1 月 21 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.2.0 3.2.0 3.2.0 3.2.0 3.2.0

修正錯誤及強化功能:

問題 ID 類型 說明
152640618 錯誤 啟用 extauth 外掛程式x-api-key 標頭設為 包含的 client_id 要求物件。x-api-key 就會支付給 後續的外掛程式
168836123、172295489、176462355、176462872 功能 開始支援 Node.js 14。
172376835 錯誤 為「/token」端點使用正確的時間單位 edgemicro-auth Proxy。

已修正 edgemicro-auth/token 端點的問題 Proxy 傳回 expires_in (以毫秒為單位);但根據 OAuth 規格,應與 refresh_token_expires_in 的時間單位一致。 也就是說,以秒為單位

修正方式不會改變到期時間長度,只會改變時間單位。只有 會套用至存取權杖回應酬載中的 expires_in 欄位。JWT 就會包含兩個欄位:iatexp,以及 這些變數一律會使用 seconds 時間單位。

如果客戶持續使用 expires_in 值 (以毫秒為單位), 並在權杖過期前套用這項修正 修改用戶端會造成更頻繁及不必要的重新整理。 這些客戶需要修改,才能採用 並維持原本的行為

如果用戶端始終使用 JWT 權杖中的值來評估憑證 則用戶端應該不需要變更。

173064680 錯誤 微閘道結束目標要求的問題已修正 再處理所有資料區塊

這是 在高酬載大小要求中觀察到間歇性問題,而這個問題 在 3.1.7 版中特別導入的

174640712 錯誤 在外掛程式中新增適當的資料處理方式

下列外掛程式已新增適當的資料處理方式:json2xmlaccumulate-requestaccumulate-responseheader-uppercase。外掛程式專用 詳情請參閱 microgateway-plugins

3.1.x 版

錯誤修正和強化功能 3.1.x 版

3.1.8

我們在 2020 年 11 月 16 日星期一,為 Edge 發布下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.8 3.1.9 3.1.7 3.1.3 3.1.2

修正錯誤及強化功能:

問題 ID 類型 說明
169201295 錯誤 環境變數標記中的數字和布林值遭到錯誤剖析。

環境變數替換處理,已將所有值剖析為 字串,會導致剖析布林值或數值時發生錯誤 輕鬆分配獎金舉例來說,edgemicro.port 必須是數值且需要數值。修正項目: 同時支援布林值和數值。請參閱設定配置屬性 環境變數值,以瞭解設定詳細資料。

169202749 錯誤 在某些情況下無法取代環境變數。

某些設定無法用環境變數替換處理功能 屬性。請參閱設定配置屬性 環境變數值

168732942 錯誤 已修正 OAuth 範圍無法限制 API Proxy 存取權的問題 正常運作。

edgemicro-auth Proxy 產生的 JWT 中的 /token 流程,不含 基於兩種不同情境,在 Edge 上定義的正確產品範圍:1) 對 /token 流程的要求酬載未通過範圍參數,或 2) 無效的範圍已從要求酬載傳遞至 /token 流程。已修正 傳回在 Apigee Edge 上 API 產品定義的所有範圍。

170609716 錯誤 已在 edgemicro-auth 中修正 /refresh 資料流的問題 Proxy 產生的 JWT 不含 apiProductList

170708611 錯誤 API 產品範圍不適用於自訂外掛程式。

API 產品範圍未提供給自訂外掛程式使用,也未寫入 快取設定檔。詳情請參閱 關於外掛程式 init() 函式,即可查看範圍 外掛程式都能存取詳細資料

169810710 功能 金鑰和密鑰已儲存在快取設定檔中。

系統每隔 1 秒,就會將 Edge Microgateway 金鑰和密鑰儲存在 重新載入/開始。在 3.1.8 版中,系統不再儲存快取設定中的金鑰和密鑰 檔案。如果金鑰和密鑰先前已寫入快取設定檔, 系統就會加以移除

170708621 功能 無法停用數據分析外掛程式。

在先前的微閘道版本中,數據分析外掛程式預設為啟用,因此無法 並停用該功能在 3.1.8 版中,新增設定參數 enableAnalytics 啟用或停用數據分析外掛程式。詳情請參閱設定參考資料

159571119 錯誤 在自訂外掛程式的 onerror_request 掛鉤中,收到空值錯誤 回應/通訊端逾時。

問題修正,填入正確的 HTTP 狀態碼和錯誤訊息 onerror_request 事件和錯誤的錯誤訊息 onerror_response 事件。

3.1.7

2020 年 9 月 24 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.7 3.1.8 3.1.6 3.1.2 3.1.1

修正錯誤及強化功能:

問題 ID 類型 說明
131708105 錯誤 analytics 外掛程式誤處理 axpublisher 通呼叫,並造成 worker 退出。

133162200 錯誤 狀態為 403 的開發人員應用程式資訊未填入 Analytics 因未經授權的產品資源路徑或 401 回應所導致的回應 是因權杖過期或無效而造成。

132194290 錯誤 Apigee Edge 拒絕部分數據分析時,系統會捨棄數據分析記錄 。

158618994 錯誤 Redis 用戶端連線過多。

161404373 錯誤 在 404 狀態回應中,其中包含完整的 Proxy URI 回覆訊息。
166356972 錯誤

透過 Node.js 12.13.x 以上版本執行 Edge Microgateway 執行轉換要求酬載的外掛程式時,可能會發生下列錯誤:

{"message":"write after end","code":"ERR_STREAM_WRITE_AFTER_END"}

168681746 錯誤 使用 redisBasedConfigCache:true 手動重新載入 Edge Microgateway 手動重新載入方式 未正常運作。

149256174 錯誤 未記錄網路的 OAuth 外掛程式錯誤 失敗。

166517190 錯誤 jwk_public_keys 資料未儲存, 並儲存在 Redis 中。

141659881 錯誤 處理無效目標憑證時發生錯誤 顯示誤導性的錯誤回應

142808699 錯誤 Accesscontrol 外掛程式無法處理「允許」問題和「deny」版面 正確答案

微型閘道現在可正確處理拒絕部分並遵循 「允許」和「deny」專區。已新增 noRuleMatchAction 資源 附加至微閘道設定檔,以提供與 Apigee Edge AccessControl 的一致 政策。另請參閱 GitHub 上的存取權控管外掛程式 README

3.1.6

2020 年 8 月 20 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.6 3.1.7 3.1.5 3.1.1 3.1.1

修正錯誤及強化功能:

問題 ID 類型 說明
163711992 功能 輪替金鑰指令的自訂金鑰和憑證檔案位置選項。

如要進一步瞭解這些新指令選項,請參閱輪替金鑰

154838259 錯誤 修正多個資料中心內多個執行個體的金鑰輪替問題

如要進一步瞭解這些新指令選項,請參閱輪替金鑰

145525133 Alpha 版功能 新外掛程式指標

請參閱 新的外掛程式指標:GitHub 上的 README 檔案,查看詳細資料。

159396879 錯誤 移除未使用的套件輔助程式
161092943 錯誤 基本路徑驗證有誤

在 3.1.6 版之前,basepath 無法正確比對 Proxy 基本路徑 結尾不是「/」。

下文將進一步說明先前行為 (在 3.1.6 中已修正):

假設 Proxy 設定了基本路徑:/hello/v1 和 目標路徑 (https://mocktarget.apigee.net)。現在,假設 會收到下列要求:

要求路徑 已解決的路徑 結果
/hello/v1/json https://mocktarget.apigee.net/json 解析的路徑正確,因為 /hello/v1 的基本路徑 完全一致
要求路徑 已解決的路徑 結果
/hello/v1json https://mocktarget.apigee.netjson /hello/v1 是子字串,因此解析路徑不正確 (共 /hello/v1json 個)。因為 /hello/v1json 無效 路徑,Edge Microgateway 應擲回 404。在 3.1.6 以上版本中, 在此情況下,系統會擲回 404 錯誤。
160431789 錯誤 自訂外掛程式 - 未填入傳遞至 init 的設定物件

Apigee Edge 設定在設定物件中 自訂外掛程式。詳情請見 config

162758808 錯誤 Redis 備份儲存庫的新配額設定

您可以使用以下設定,為 Redis 備份存放區指定配額。 詳情請參閱使用 Redis 備份存放區取得配額

3.1.5

我們在 2020 年 6 月 26 日星期五發布下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.5 3.1.6 3.1.4 3.1.0 3.1.0

修正錯誤及強化功能:

問題 ID 類型 說明
159210507 功能 排除外掛程式處理的設定

新增了一項設定功能,可以略過 Google 外掛程式的 指定網址。如需詳細資訊,請參閱 設定排除外掛程式的網址。

156986819、158529319 錯誤 json2xml 外掛程式的問題已修正

外掛程式重複產生的問題 Content-Type 標頭,以及標頭未如預期傳送至目標的 在某些情況下。

156560067、159688634 功能

在設定中使用環境變數值

我們新增了一項功能,可讓您在設定中使用標記指定環境變數 檔案。指定的環境變數標記會由實際環境取代 變數值。 替換內容只會儲存在記憶體中,不會儲存在原始模型中 設定或快取檔案如需詳細資訊,請參閱 使用環境變數值來設定設定屬性

155077210 錯誤 修正記錄格式問題。

目標主機在記錄檔中顯示,並加上多餘的半形冒號,已修正這個問題 先前提過 執行個體對於分配到的外部 IP 位址一無所知

153673257 錯誤

(僅限 Private Cloud 的邊緣) 未提取微門感知型產品

修正無法提取微閘道感知產品的問題。本期 保留在 Edge 上,僅供 Private Cloud 安裝使用。

154956890、155008028、155829434 功能 支援依自訂屬性篩選下載的產品

詳情請參閱依自訂屬性篩選產品

153949764 錯誤 Edge Microgateway 程序在 記錄檔目的地檔案已滿

系統已改善例外狀況處理功能來捕捉錯誤,並將訊息輸出至控制台。

155499600 錯誤 金鑰輪替和 KVM 升級問題已修正

另請參閱輪替 JWT 金鑰

3.1.4

我們在 2020 年 4 月 23 日星期五發布下列 Edge 修正項目 Microgateway。

修正錯誤:

3.1.3 版中的依附元件問題已修正。3.1.3 版已標示為 已淘汰 npm 存放區中的指示。否則, 3.1.3 版本資訊中所述的錯誤修正和強化功能適用於此版本。

3.1.3

我們在 2020 年 4 月 15 日星期三發布了下列 Edge 修正及強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.3 3.1.3 3.1.3 3.0.14 3.0.9

修正錯誤及強化功能:

  • 153509313 - 已修正 Node.js 偵錯模組導致記憶體流失的問題。 3.1.0 版、3.1.1 版和 3.1.2 版中存在這個問題。
  • 153509313 - 兩筆不同交易使用相同郵件 ID 的問題已修正 已顯示在記錄輸出中
  • 151673570 - 修正 Edge Microgateway 未更新為使用新 Apigee KVM API。Edge Microgateway 現在使用新指令來新增及更新 KVM 值。
  • 152822846 - 在先前版本中,Edge Microgateway 加以更新,以便處理 資源路徑對應關係與 Apigee Edge 相符這個版本修正的問題 未正確處理 /literal_string/* 模式。例如: /*/2/*。詳情請見 同時 設定「/」、「/*」和「/**」資源路徑的行為。
  • 152005003 - 進行變更,啟用機構和環境範圍的 ID 。
  • 152005003 - 進行變更,啟用機構和環境範圍的 ID 。「org + env + appName + productName」的組合說明的配額 或 ID。

3.1.2

我們在 2020 年 3 月 16 日星期一為 Edge 發布下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.2 3.1.2 3.1.2 3.0.13 3.0.9

修正錯誤及強化功能:

  • 151285018 - 已強化功能,新增對流量的 HTTP Proxy 支援 和後端目標之間的連線另外,現有的 HTTP 問題也已修正 Edge Microgateway 和 Apigee Edge 之間的 Proxy 支援。詳情請參閱:
  • 149101890 - 目標伺服器或負載平衡器情況下的記錄通知程式碼 關閉的連線已從 ERROR 變更為 INFO。
  • 150746985 - 已修正 edgemicro verify 指令未成功的問題 如果 redisBasedConfigCache: truequotaUri: https://%s-%s.apigee.net/edgemicro-auth,則可正常運作 。
  • 151284716 - 強化了在工作站時能夠更快關閉伺服器連線的功能 在重新載入期間重新啟動。
  • 151588764 - 在用來執行 Edge Microgateway 的 Docker 映像檔中更新 Node.js 版本 版本至 12,因為 Node.js v8 已淘汰。
  • 151306049 - 更新說明文件,列出 Apigee Edge 管理作業 Edge Microgateway CLI 指令使用的 API。詳情請參閱 Edge Microgateway 使用何種管理 API?

3.1.1

我們在 2 月 20 日星期四發布了下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.1 3.1.1 3.1.1 3.0.13 3.0.9

修正錯誤及強化功能:

  • 146069701 - 修正 microgateway-core 模組的問題 未遵循 HTTP_PROXYHTTPS_PROXY 環境變數。 這項異動生效後,YAML 設定檔中的 Proxy 設定 (如有指定) 已忽略;只有環境變數會用於指定 Proxy。

    如要指定設定檔中的 Proxy 設定,您必須同時 指定 HTTP_PROXY 變數,使其提及與 設定檔舉例來說,如果您指定下列設定:

    edge_config:
      proxy: http://10.128.0.20:3128
      proxy_tunnel: true
    

    您必須一併指定以下環境變數:

    HTTP_PROXY=http://10.128.0.20:3128
  • 146320620 - 新的設定參數 edgemicro.headers_timeout 之前為 已新增。此屬性會限制 HTTP 剖析器收到 完整的 HTTP 標頭例如:
    edgemicro:
    keep_alive_timeout: 6000
    headers_timeout: 12000

    參數會在內部設定 Node.js Server.headersTimeout敬上 屬性。(預設:超過 5 秒 使用 edgemicro.keep_alive_timeout 設定的時間。預設 設定可防止負載平衡器或 Proxy 意外捨棄連線)。

  • 149278885 - 我們新增了一項功能,可讓您在 API Proxy 級別,而非使用單一全域逾時設定。

    如果您設定了 TargetEndpoint 屬性 io.timeout.millis敬上 在 API Proxy 中,Edge Microgateway 就能擷取該屬性並套用目標 端點專屬逾時如果未套用此參數,Edge Microgateway 會採用 使用 edgemicro.request_timeout 來指定全域逾時。

3.1.0

我們在 1 月 21 日星期二針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.1.0 3.1.0 3.1.0 3.0.12 3.0.9

修正錯誤及強化功能:

  • 144187500 - 觸發 quotas.failOpen 標記時,系統會記錄新的 WARN 層級事件。 如果發生配額處理錯誤或「適用配額」時,就會觸發這個旗標要求 Edge 無法更新遠端配額計數器。在這個例子中,配額的處理流程 的本機計數,直到下次成功同步處理遠端配額為止。先前, 事件才會記錄。

    例如:

    2020-01-20T02:52:53.040Z [warn][localhost:8000][5][foo-eval][test][hello/][]
    [DbpGIq9jKfzPX8jvXEivhA0LPwE][f372cc30-3b2f-11ea-845f-a627f][quota][remote quota not
    available so processing locally, setting quota-failed-open for identifier: AppQuota60.Quota60]
    [GET][][][][]
  • 145023519 - 處理中或新交易受到影響的問題 每當 Edge Microgateway 偵測到 API Proxy 變更時就會啟動。現在對 Proxy 進行變更時 Edge Microgateway 重新整理快取並重新啟動工作站節點。這項變更實施後,處理中的交易 以及傳送至微閘道的新 API 呼叫不會受到影響。
  • 146378327 - sourceRequest 的記錄層級,targetRequest。 和 targetResponse 已變更為「資訊」層級。
  • 146019878 - 與「API Proxy 效能」計算的延遲時間不一致 已遷移至 Edge Analytics 和 Edge Microgateway sourceResponse/targetResponse 事件 通常也會自動修復現在 Edge 分析和 Microgateway 記錄事件的延遲時間會保持一致。
  • 模式比對邏輯相關變更:
    • 147027862 - 更新 OAuth 外掛程式,以支援下列資源路徑 「API 產品」中指定的比對模式:
      • /{literal}**
      • /{literal}*
      • 超過兩個模式的任意組合

      這項變更生效後,Edge Microgateway 外掛程式現在遵循 如同 Apigee Edge 的模式比對模式 設定資源的行為 「/」、「/*」和「/**」的路徑。

    • 145644205 - 更新 apiKeys 外掛程式的模式比對邏輯以比對 OAuth 外掛程式。
  • 143488312 - 已修正用戶端 ID 開頭或結尾的空格 參數造成 OAuth 權杖和 JWT 產品清單建立空白, API 金鑰要求。
  • 145640807 和 147579179 - 已新增一項功能,可允許特殊的 Edge Microgateway 名為「同步處理器」的執行個體,從 Apigee Edge 擷取設定資料並加以寫入 複製到本機 Redis 資料庫然後設定其他微閘道執行個體 儲存資料庫設定資料這項功能可提升 Edge Microgateway 的韌性。 可讓微閘道執行個體啟動及運作,不必與 Apigee Edge。詳情請參閱 使用同步處理工具

    同步程式功能目前可與 Redis 5.0.x 搭配使用。

3.0.x 版

修正錯誤並強化 3.0.x 版

3.0.10

11 月 8 日星期五,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.0.10 3.0.8 3.0.8 3.0.11 3.0.8

修正錯誤及強化功能:

  • 142677575 - 已進行功能更新,以便比對資源路徑的模式 現在用於 Edge Microgateway API 產品所用的資源路徑模式比對功能 Apigee Edge 設定「/」、「/*」和「/**」資源路徑的行為。

    注意:如果您使用複合資源模式 (例如 /*/2/**), 必須確保 edgemicro_auth Proxy 會新增至 獨立 API 產品接著,請將該產品納入 Proxy 的開發人員應用程式 如以下螢幕截圖所示:

    alt_text

    注意:features.isSingleForwardSlashBlockingEnabled 設定屬性, 不支援設定「/」、「/*」和「/**」資源路徑的行為 適用於 Edge Microgateway

  • 143740696 - quotas 設定結構已變更 (另請參閱 3.0.9 版的版本資訊)。quotas 屬性設定配額外掛程式。結構異動 消除所有設定元素的清晰度 如要設定配額外掛程式,請使用下列 YAML 設定。請注意, 設定屬性稱為 quotas 有關個別 quotas 設定的詳細資料 資源,請參閱 配額設定選項。

    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
        sequence:
          - oauth
          - quota
    quotas:
      bufferSize:
        hour: 20000
        minute: 500
        default: 10000
      useDebugMpId: true
      failOpen: true
    ...
  • 141750056 - 我們新增了一項功能,可讓您使用 Redis 做為配額 備份儲存庫 如果 useRedis 為 true,則 使用的 volos-quota-redis 模組。 設為 true 時,配額僅適用於會執行以下作業的 Edge Microgateway 執行個體 連線至 Redis如果是 false,表示 volos-quota-apigee 模組是用來做為備份儲存庫,配額計數器則為全域性質。詳情請參閱 配額設定選項。例如:
    edgemicro:
    ...
    quotas:
      useRedis: true
      redisHost: localhost
      redisPort: 6379
      redisDb: 1
  • 140574210 - edgemicro-auth 所產生權杖的預設到期時間 Proxy 已從 108000 毫秒 (1.8 分鐘) 變更為 1800 秒 (30 分鐘)。
  • 143551282 - 如要支援已啟用 SAML 的機構,edgemicro genkeys 指令的 已更新為加入 ‑‑token 參數。這個參數可讓您 進行驗證的 OAuth 權杖而非使用者名稱/密碼。 如需詳細資訊,請參閱 產生金鑰

3.0.9

我們在 10 月 11 日星期五發布下列 Edge 修正和強化功能 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.0.9 3.0.7 3.0.7 3.0.10 3.0.7

修正錯誤及強化功能:

  • 141989374 - 新的「失效開放」配額外掛程式的新功能。 啟用這項功能後,如果發生配額處理錯誤 或是「適用配額」無法向 Edge 發出的要求更新遠端配額計數器,配額 會根據本機數量處理,直到下次成功的遠端配額為止 同步處理作業會發生的時間在這兩種情況下,quota-failed-open 標記都會在 要求物件。

    如要啟用「失效開放」配額功能,進行以下設定:

    quotas :
     failOpen : true

    注意:此外,OAuth 外掛程式的 fail-open 要求物件標記名稱已變更為 oauth-failed-open

  • 142093764 - edgemicro-auth Proxy 的設定變更 避免配額超支變更會將配額類型設為 日曆。 如要使用這項改善功能,請進行更新 並將 edgemicro-auth 更新至 3.0.7 以上版本。
  • 142520568 - 已新增一項功能,可啟用 MP 記錄功能 (訊息處理器) ID 。如要使用這項功能,你必須更新 您的 edgemicro-auth Proxy 至 3.0.7 以上版本 然後進行以下設定:
    quotas:
      useDebugMpId: true

    設定 useDebugMpId 後,Edge 的配額回應就會包含 MP ID 且會由 Edge Microgateway 記錄例如:

    {
        "allowed": 20,
        "used": 3,
        "exceeded": 0,
        "available": 17,
        "expiryTime": 1570748640000,
        "timestamp": 1570748580323,
        "debugMpId": "6a12dd72-5c8a-4d39-b51d-2c64f953de6a"
    }

3.0.8

9 月 26 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.0.8 3.0.6 3.0.6 3.0.9 3.0.6

修正錯誤及強化功能:

  • 140025210 - 新的「失效開放」已新增地圖項目。這項功能可讓 API 處理繼續進行: 發生連線錯誤導致無法重新整理過期的 JWT 權杖 成功向 edgemicro-auth Proxy 發出 API 金鑰驗證呼叫。

    這項功能可讓你設定寬限期,將舊權杖保留在快取中 並會重新使用,直到寬限期結束為止。這項功能允許使用 Edge Microgateway ,在暫時連線失敗時繼續處理要求。時間 這樣您就能繼續連線,並成功呼叫 API 金鑰呼叫後,新的 JWT ,並取代快取中的舊 JWT。

    設定新的「失效開放」功能,請執行以下動作:

    1. 在 Edge Microgateway 的 oauth 旗標中設定下列屬性 設定檔:
      oauth:
        failOpen: true
        failopenGraceInterval: time_in_seconds
        cacheKey: true
        ...

      例如:

      oauth:
        failOpen: true
        failopenGraceInterval: 5
        cacheKey: true
        ...

      在此範例中,如果無法重新整理,會使用舊權杖 5 秒 因而導致 ANR 發生原因是連線問題 5 秒鐘後,系統會傳回驗證錯誤。

  • 141168968 - 為加入 所有外掛程式記錄輸出中的 correlation_id。 此外,某些記錄的記錄層級已視需要變更為 error
  • 140193349 - 已對 edgemicro-auth Proxy 進行更新,必須使用 Edge Microgateway 每次要驗證 API 金鑰要求時要驗證的金鑰和密鑰。Edge Microgateway 已經 更新為一律傳送每個 Verify API 金鑰要求的金鑰和密鑰。這項異動 防止用戶端取得僅含 API 金鑰的 JWT。
  • 140090250 - 已進行更新,加入配額處理的診斷記錄。使用這項 現在可以將仲裁記錄輸出與其餘 Edge Microgateway 兩者建立關聯 。

3.0.7

9 月 12 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

元件版本:

下表列出個別元件專案的版本號碼。 相關聯的分數 。請注意,因為每個元件都是獨立的專案 和主要產品版本可能不一致:

微型閘道 core 設定 外掛程式 edgeauth
3.0.7 3.0.5 3.0.5 3.0.8 3.0.5

修正錯誤及強化功能:

  • 140075602 - 已更新 OAuth 外掛程式,以傳回 5xx 狀態碼。 或適當。先前外掛程式在所有作業系統中都只會傳回 4xx 狀態碼 非 200 個案例現在,若訊息回應不是 200 狀態 系統會根據錯誤傳回 4xx 或 5xx 代碼。

    這項功能預設為停用。如要啟用這項功能,請新增 oauth.useUpstreamResponse: true 附加至 Edge Microgateway 設定例如:

    oauth:
      allowNoAuthorization: false
      allowInvalidAuthorization: false
      gracePeriod: 10
      useUpstreamResponse: true
  • 140090623 - 在版本 3.0.6 中,新增了 quota.quotaUri 設定屬性。 如要透過 edgemicro-auth 管理配額,請設定這項設定屬性 已部署至機構如未設定此屬性,配額端點 預設為內部 Edge Microgateway 端點。例如:
    edge_config:
      quotaUri: https://%s-%s.apigee.net/edgemicro-auth

    在版本 3.0.7 中,edgemicro-auth 已更新為接受這項新功能 此外還會從 0 自動調整資源配置 您完全不必調整資源調度設定如要使用 quotaUri 屬性,您必須升級至 最新的 edgemicro-auth Proxy如需詳細資訊,請參閱 升級 Edgemicro-auth Proxy 上。

  • 140470888 - 已新增 Authorization 標頭 進而提供驗證 此外,edgemicro-auth Proxy 也已修改,可以移除 「organization」來自配額識別碼由於配額端點位於 不再需要使用這個配額 ID。
  • 140823165 - 下列屬性名稱:
    edgemicro:
        keepAliveTimeout

    在 3.0.6 版中記錄不正確。正確的屬性名稱如下:

    edgemicro:
        keep_alive_timeout
  • 139526406 - 修正了開發人員應用程式有錯誤配額計數的錯誤 多種產品現在可正確針對應用程式中每項產品強制執行配額 假設有多個產品「appName + productName」的組合是用於 配額識別碼。

3.0.6

8 月 29 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

  • 138633700 - 新增設定屬性 keepAliveTimeout。這項資源支援 需要設定 Edge Microgateway 逾時 (以毫秒為單位)。(預設值:5000 毫秒)

    例如:

    edgemicro:
      keep_alive_timeout: 600
  • 140090623 - 新增設定屬性 quotaUri。進行這項設定 屬性 (如果您想透過edgemicro-auth 已部署至貴機構如未設定此屬性, 配額端點預設為內部 Edge Microgateway 端點。例如:
    edge_config:
      quotaUri: https://your_org-your_env.apigee.net/edgemicro-auth
    

    如要使用這項功能,您必須先部署最新版本的 將 edgemicro-auth Proxy 連線至貴機構。詳情請參閱 升級 Edgemicro-auth Proxy

  • 138722809 - 新增了設定屬性 stack_trace。這項資源 可讓您控制 堆疊追蹤不會顯示在記錄檔中。舉例來說:
    stack_trace: false

    如果將 stack_trace 設為 true, 堆疊追蹤就會 可以顯示在記錄中如果設為 false,則堆疊 追蹤記錄不會顯示在記錄中。

3.0.5

8 月 15 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

修正錯誤
  • 139005279 - 修正 edgemicro status 指令未傳回的問題 適當的工作站程序數量
  • 138437710 - ExitCounter 類別中的問題導致無法正確執行 寫入記錄檔
,瞭解如何調查及移除這項存取權。 改善一般記錄訊息
  • 139064652 - 新增了針對事件新增 tracedebug 記錄層級的功能 和系統記錄檔目前只新增新增這些記錄層級的功能。目前, 可用的記錄層級為 infowarnerror
  • 139064616 - 所有主控台記錄陳述式均已針對記錄輸出標準化。控制台 記錄陳述式現在包含以下屬性:
    • 時間戳記
    • 元件名稱
    • 程序 ID
    • 控制台記錄訊息
    ,瞭解如何調查及移除這項存取權。
,瞭解如何調查及移除這項存取權。 改善 JWT 金鑰和密鑰記錄訊息
  • 138413755 - 改善這些 CLI 的 JWT 金鑰和密鑰相關記錄訊息 指令:cert、verify、upgradekvm、權杖、genkey、撤銷金鑰、輪替金鑰和設定。
,瞭解如何調查及移除這項存取權。 改善逾時和連線遭拒的錯誤訊息
  • 138413577 - 新增並改善後端服務逾時的錯誤處理方式。
  • 138413303 - 新增及改善回應與通訊端逾時的錯誤處理方式。
  • 138414116 - 新增「連線遭拒」的錯誤處理機制,並改善相關錯誤處理方式發生錯誤。

3.0.4

在 8 月 1 日星期四,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

  • 134445926 - 改善內部 Edge Microgateway 驗證。
  • 137582169 - 解決啟動不當程序時發生的問題。額外程序 導致外掛程式重新載入並使用記憶體過多。 Edge Microgateway 現在會將程序的數量保持在預期限制內。
  • 137768774 - 改善記錄訊息:
    • 清除交易 (要求) 記錄。
    • 視需要新增更多記錄訊息。
    • 已將交易 (要求) 記錄訊息從控制台輸出內容移至相關的 記錄檔
    • 將控制台記錄更新為使用集中化記錄函式。
  • 138321133、138320563 - 對配額緩衝區的基礎內部變更 以便啟用日後的配額強化功能

3.0.3

7 月 23 日星期二,我們針對 Edge 發布了下列修正及強化項目 Microgateway。

  • 記錄強化功能:現有執行階段記錄檔會使用新的 eventLog() 函式,能以一致的方式擷取及記錄執行階段資料 格式。記錄資訊包括:
    • 時間戳記 (ISO 8601:YYYY-MM-DDTHH:mm:ss.sssZ)。
    • 記錄層級 (錯誤、警告或資訊)。
    • 主機名稱:來自要求標頭的要求主機名稱。
    • 程序 ID - 如果您執行的叢集是 Node.js 程序,這就是 發生記錄事件時
    • Apigee 機構名稱。
    • 機構中的環境名稱。
    • API Proxy 名稱。
    • 用戶端 IP 位址。
    • ClientId。
    • 關聯性 ID (目前未設定)。
    • Edge Microgateway 元件名稱。
    • 自訂訊息 - 某些物件可能會輸出延伸的其他資訊 對應至這個錯誤屬性。
    • 回應狀態碼 (如果是 HTTP 要求)。
    • 錯誤訊息。
    • 錯誤代碼 - 如果物件包含錯誤代碼,會列印在此屬性中。
    • 花費的時間。
    • 作業系統 結尾處。

    空值會產生空白括號 []

    記錄格式範例如下:

    Timestamp [level][hostname][ProcessId][Org][Environment][APIProxy][ClientIp][ClientId][][component][customMessage][reqMethod][respStatusCode][errMessage][errCode][timeTaken]

    (137770055)。

  • 成效:系統並未根據環境篩選 API 產品,本期 現在已經修正完畢(135038879)。
  • 多項功能測試整合並提升程式碼品質。

3.0.2

2019 年 7 月 3 日星期三,我們針對 Edge 發布了下列修正和強化項目 Microgateway。

程式碼品質:程式碼已完成審查,並對程式碼做出變更 符合使用者要求的品質標準我們修正了程式碼品質錯誤和警告 衍生自 JSHint。 我們找到並修復了一些實際的程式碼錯誤。所有 Apigee Edge Microgateway 都使用了這個程序查看 6 月 28 日和 7 月 2 日的承諾使用合約 microgateway-config, microgateway-core, microgateway-pluginsmicrogateway。 所有程式碼品質變更的模組均已通過內部工具測試,用於驗證 為客戶用途執行 Edge Microgateway。

3.0.1

我們在 2019 年 6 月 21 日星期五發布下列 Edge 修正和強化功能 Microgateway。

  • 134834551 - 變更受 Edge Microgateway 支援的 Node.js 版本
    (支援 Node.js 的版本:8 和 12;第 7、9 和 11 版均為實驗性質)
  • 134751883 - 重新載入時,Edge Microgateway 會在載入時當機
  • 134518428 - 如果篩選器模式為,Edge Microgateway 的產品端點會傳回 5XX 答錯了
  • 135113408 - 工作站若意外終止,應重新啟動
  • 134945852 - TokenCacheSize 未在 OAuth 外掛程式中使用
  • 134947757 - 在 OAuth 外掛程式中設定快取存留時間
  • 135445171 - OAuth 的寬限期計算不正確
  • 使用 Edge Microgateway 安裝功能提供的 Memored 模組
  • 135367906 - 安全性稽核

2.5.x 版

新功能和強化項目 2.5.x 版

(已修正 2.5.38,2019 年 6 月 7 日)

使用權杖快取時,如果 JWT 格式不正確,可能會導致工作站當機。固定在邊緣 微型閘道外掛程式模組(b/134672029)

(新增 2.5.37) 新增 CLI 選項 edgemicro-cert -t

edgemicro cert -t 選項可讓您指定要為哪個 OAuth 權杖 並驗證管理 API另請參閱管理憑證

(新增 2.5.35) 新增使用 edgemicroctl 對 Edge Microgateway 偵錯的支援

您可以將 mgdebug 旗標與 edgemicroctl 搭配使用。其他參考資訊 Kubernetes 整合工作

(已新增 2.5.35) 為 edgemicroctl 啟用 Windows 版本

(新增 2.5.31) 新增 Edgemicro-auth/token API

已新增 Edgemicro-auth/token API,讓您以 Base64 編碼形式傳遞用戶端/密鑰 基本 Authorization 標頭,以及將 allow_type 做為表單參數的值。 請參閱直接取得不記名符記

(已修正 2.5.31) 私人設定未遵循權杖標記

修正問題:設定 Edge Microgateway 讓 Edge 上的 OAuth2 存取權杖使用 私有雲無法正常運作 (未使用權杖)。

Docker:支援使用自行簽署的憑證

(新增 2.5.29) 如果您使用預設不受信任的憑證授權單位 (CA) Node.js,您可以在執行 Docker 容器時使用 NODE_EXTRA_CA_CERTS 參數 。 詳情請參閱使用 Node.js 不信任的 CA 一文。

Docker:支援 TLS

(新增 2.5.29) 在 Docker 容器中執行的 Edge Microgateway 現在支援傳入的 TLS 對 Edge Microgateway 伺服器 (北入要求) 的要求,以及從 Edge Microgateway 到 目標應用程式 (南方要求) 的位址。

下列範例將詳細說明如何設定這些 TLS 設定:

在這些範例中,您將瞭解如何使用容器掛接點 /opt/apigee/.edgemicro 載入 憑證,之後會在 Edge Microgateway 設定檔中參照。

Docker:支援要求 Proxy

(新增 2.5.27) 如果您在 Docker 容器中執行 Edge Microgateway,可以使用這些選項控制 Proxy 微閘道在防火牆後方執行時的行為:

  • HTTP_PROXY
  • HTTPS_PROXY
  • NO_PROXY

詳情請參閱「以 Docker 容器的形式執行 Edge Micro」。

Docker:更新外掛程式操作說明

(新增 2.5.27) 如果您在 Docker 容器中執行 Edge Microgateway,現在有兩個選項可以選擇 以及部署外掛程式其中一個選項是使用 Docker 掛接點。另一個選項已經存在 基本上維持不變不過 Dockerfile 已更新詳情請參閱下列連結:

,瞭解如何調查及移除這項存取權。

KVM 升級指令適用的全新 OAuth 權杖支援

(新增 2.5.27) 您可以搭配 upgradekvm 指令使用 OAuth 權杖。詳情請參閱 升級 KVM

區隔 Edge Analytics 中的 API

(新增 2.5.26) 新版數據分析外掛程式旗標可用來區隔特定 API 路徑,讓該路徑顯示為 使用獨立的 Proxy 處理 Edge Analytics 資訊主頁例如: 可以區隔健康狀態檢查 API,避免透過實際的 API 呼叫造成混淆。若需更多資訊,請參閲 排除數據分析的路徑

設定本機 Proxy

(新增 2.5.25) 使用本機 Proxy,就不需要 在 Apigee Edge 上手動建立微閘道感知 Proxy。微型閘道則會使用 本機 Proxy 的基礎路徑詳情請參閱使用本機 Proxy 模式

使用獨立模式

(新增 2.5.25) 您可以完全中斷與任何連線的 Edge Microgateway Apigee Edge 依附元件。這個情境稱為獨立模式,可讓您執行及測試 Edge Microgateway 沒有網際網路連線。請參閱在獨立模式下執行 Edge Microgateway

撤銷金鑰

(新增 2.5.19) 已新增一個 CLI 指令,撤銷 Pod 的金鑰和密鑰憑證 Edge Microgateway 設定。

edgemicro revokekeys -o [organization] -e [environment] -u [username] -k [key] -s [secret]
敬上 詳情請參閱「撤銷金鑰」。

Docker 支援

(新增 2.5.19) 您現在可以將最新的 Edge Microgateway 版本下載為 Docker 映像檔

docker pull gcr.io/apigee-microgateway/edgemicro:latest

Kubernetes 支援

(新增 2.5.19) 您可以將 Edge Microgateway 做為服務部署,也可以部署位於 部署在 Kubernetes 叢集中的服務。請參閱以下內容: 整合 Edge Microgateway 與 Kubernetes 的總覽

支援 TCP 節點選項選項

(新增 2.5.16) 全新設定「nodelay」已新增至 Edge Micro 設定。

根據預設,TCP 連線會使用 Nagle 演算法來緩衝資料,然後再傳送資料。將nodelay設為「true」, 停用此行為 (資料將在每次時立即觸發資料) 系統會呼叫 socket.write())。另請參閱 Node.js 說明文件

如要啟用 nodelay,請按照下列方式編輯 Edge Micro 設定檔

edgemicro:
  nodelay: true
  port: 8000
  max_connections: 1000
  config_change_poll_interval: 600
  logging:
    level: error
    dir: /var/tmp
    stats_log_interval: 60
    rotate_interval: 24

適用於永久監控的全新 CLI 選項

(新增 2.5.12) edgemicro forever 指令已新增參數。這些參數可讓您 指定 forever.json 檔案的位置,並透過「Forever」(永久) 啟動或停止 背景程序。另請參閱「永久監控」一文

參數說明
-f, --file指定 forever.json 檔案的位置。
-a, --actionstartstop。預設值為 start。

範例:

如何永久啟動:

edgemicro forever -f ~/mydir/forever.json -a start

如何永久停止更新:

edgemicro forever -a stop

JWT 金鑰輪替

我們新增了一項功能,可讓您輪替公開/私密金鑰組, 產生用於 Edge Microgateway 上 OAuth 安全性的 JWT 權杖。詳情請參閱 輪替 JWT 金鑰。

篩選已下載的 API Proxy

根據預設,Edge Microgateway 會下載 Edge 機構中的所有 Proxy 名稱前置字串為「edgemicro_」你可以變更這項預設設定,以便下載 Proxy 名稱符合某個模式。詳情請參閱 篩選已下載的 Proxy。

在不使用 API Proxy 的情況下指定產品

在 Apigee Edge 中,您可以建立不含任何 API Proxy 的 API 產品。 這項產品設定可讓與該產品相關聯的 API 金鑰適用於任何 已部署在貴機構中自 2.5.4 版起,Edge Microgateway 支援這項產品 此外還會從 0 自動調整資源配置 您完全不必調整資源調度設定

支援永久監控

Edge Microgateway 提供 forever.json 檔案,您可以將該檔案設為 控制 Edge Microgateway 的重新啟動次數和間隔。這個檔案 設定一項稱為「永久監控」的服務,這項服務可透過程式輔助方式管理。詳情請參閱 永久監控

Edge Micro 設定檔集中管理

如果您同時執行多個 Edge Microgateway 執行個體,您可能會想管理 集中管理設定方法是指定執行 Edge 的 HTTP 端點 可以下載設定檔。詳情請參閱 指定設定檔端點

支援永久 CLI 選項

(新增 2.5.8) 使用 edgemicro forever [package.json] 指令指定 forever.json 檔案的位置。在新增此指令前 檔案必須位於 Edge Microgateway 根目錄中

例如:

edgemicro forever ~/mydir/forever.json

在重新載入指令中加入 configUrl 選項

(新增 2.5.8) 您現在可以使用 --configUrl-u 選項,搭配 edgemicro reload 指令。

JWT 時間差異

(新增 2.5.7) OAuth 設定中的 gracePeriod 屬性 起因於系統時鐘與「之前」(nbf) 或「發行時間」之間有些許差異 JWT 授權權杖中指定的 (iat) 時間。將這項屬性設為秒數 以做出此類差異詳情請參閱 OAuth 屬性

(新增 2.5.7) OAuth 設定中的 gracePeriod 屬性 起因於系統時鐘與「之前」(nbf) 或「發行時間」之間有些許差異 JWT 授權權杖中指定的 (iat) 時間。將這項屬性設為秒數 以做出此類差異詳情請參閱 OAuth 屬性

已修正 v2.5.x 版的錯誤

  • (問題 #236) 修正清除快取中的錯字。
  • (問題 #234) 重新載入 Edge Microgateway 2.5.35 的當機問題。
  • (問題 135) 虛擬主機參照「安全」無效使用 -v 選項。這項修正會修改 Edgemicro-auth Proxy,再部署至 確保虛擬主機完全符合「-v」中指定的值旗標。此外, 您可以指定任意數量的虛擬主機名稱 (不再受限於 。
  • (問題 #141) edgemicro 重新載入 指令不支援 設定檔選項 -c這個問題已經修正。
  • (問題 #142) Edge Microgateway 抱怨安裝時已淘汰的加密。 這個問題已經修正。
  • (問題 #145) 配額無法與 Edge Microgateway 搭配使用。這個問題已經修正。
  • (Apigee 社群問題: https://community.apigee.com/questions/33149/emg-jwt-token-validated-against-both-api-proxies-a.html#answer-33336) 已依據 OAUTH 中的 API Proxy 和資源 URI 驗證 JWT 權杖。這項問題因此 通常也會自動修復
  • (Apigee 社群問題:https://community.apigee.com/questions/47846/microgateway-not-working-with-oauth.html) Microgateway 不支援 OAuth。這個問題已經修正。
  • 修正 Windows 上的 pidPath。
  • (問題 #157) 導致下列錯誤訊息的問題已修正: 未定義「ReferenceError: deployProxyWithPassword」。
  • (問題 #169) 更新 Node.js 依附元件 (npm 稽核)
  • edgemicro-auth Proxy 現在會使用 Edge JWT 政策。Proxy 不再需要依賴 透過 Node.js 提供 JWT 支援。

2.4.x 版

新功能和強化項目 2.4.x 版

1. 設定自訂別名 Edgemicro-auth Proxy (PR 116)

您可以變更 edgemicro-auth Proxy 的預設基本路徑。根據預設 基本路徑為 /edgemicro-auth。如要變更,請使用 -x 標記。 edgemicro configuration 指令

範例:

edgemicro configure -x /mypath …


2.支援基本路徑的萬用字元 (PR 77)

您可以使用一或多個「*」將萬用字元 edgemicro_* Proxy。例如,/team/*/members 基礎路徑 可讓客戶呼叫 https://[host]/team/blue/membershttps://[host]/team/green/members,不必建立新的 API Proxy 支持新團隊請注意,/**/ 並非 支援。

重要事項:Apigee 不支援使用萬用字元「*」作為 計算基礎路徑的第一個元素例如「不」支援:/*/search。

3. 已為 Private Cloud 設定 (PR) 新增至 CLI 第 99 頁)

根據預設,微閘道設定檔位於 ./config/config.yaml 中。 在 init、設定和啟動指令中,您現在可以在 並在指令列中使用 -c--configDir 標記。修正問題 ,無法識別 Private Cloud 安裝的自訂設定目錄。

範例:

edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config

4. 尊重 *_PROXY 變數 (PR 61)

如果 Edge Microgateway 安裝在防火牆之後,無法與 Apigee 通訊 公有雲中的邊緣,可考慮採用以下兩種做法:

選項 1:

第一個選項是在微型閘道中,將 Edgemicro: proxy_tunnel 選項設為 true 設定檔:

edge_config:
   proxy: http://10.224.16.85:3128
   proxy_tunnel: true

proxy_tunneltrue 時,Edge Microgateway 使用 HTTP CONNECT 方法能透過單一 TCP 連線通道 HTTP 要求。(如果 用於設定 Proxy 的環境變數已啟用 TLS)。

選項 2:

第二個選項是指定 Proxy 並將 proxy_tunnel 設為 false。例如:

edge_config:
   proxy: http://10.224.16.85:3128
   proxy_tunnel: false

在這種情況下,您可以設定下列變數來控制每個 HTTP Proxy 的主機 或者哪些主機不應處理 Edge Microgateway Proxy: HTTP_PROXYHTTPS_PROXYNO_PROXY。你可以 將 NO_PROXY 設為以半形逗號分隔的網域清單,表示 Edge Microgateway 應該使用的網域 不會透過 Proxy 傳送至例如:

export HTTP_PROXY='http://localhost:3786'
export HTTPS_PROXY='https://localhost:3786'

如要進一步瞭解這些變數,請參閱:

https://www.npmjs.com/package/request#controlling-proxy-behaviour-using-environment-variables


5. 設定目標要求的自訂逾時時間 (PR 57)

您可以使用這個設定來設定目標要求的自訂逾時時間:

edgemicro:
    request_timeout: 10

逾時設定以秒為單位。如果逾時,Edge Microgateway 會傳回 504 狀態碼。

6. 遵循目標回應 (PR) 的自訂 HTTP 狀態訊息 第 53 頁)

Edge Microgateway 會遵循目標回應上設定的自訂 HTTP 狀態訊息。 在先前版本中,從目標傳送的狀態訊息已透過 Node.js 覆寫 預設值。

7. X-Forwarded-For 標頭可以將 client_ip 設定成 數據分析

如果有 X-Forwarded-For 標頭,將會設定 client_ip 變數。這項功能 知道將要求傳送至 Edge Microgateway 的用戶端 IP。

8. OAuth 外掛程式變更

OAuth 外掛程式支援 API 金鑰驗證和 OAuth 存取權杖驗證。之前 外掛程式接受兩種安全性形式的變動。這項異動生效後 其中一種安全性模型 (同時保有回溯相容性)。

OAuth 外掛程式會新增兩個新標記:

  • allowOAuthOnly -- 如果設為 true,則每個 API 都必須 並帶有不記名存取權杖的 Authorization 標頭。

  • allowAPIKeyOnly -- 如果設為 true,則每個 API 都必須 包含 API 金鑰的 x-api-key 標頭 (或自訂位置)。

這些旗標在 Edge Microgateway 設定檔中的設定如下:


oauth:
    allowNoAuthorization: false
    allowInvalidAuthorization: false
    keep-authorization-header: false
    allowOAuthOnly: false
    allowAPIKeyOnly: false

9. 已改善 Edgemicro-auth Proxy (PR 40)

我們已改善 edgemicro-auth Proxy。之前 這些變更就是透過 Proxy 儲存的金鑰 儲存在 Edge Secure Store 中,也就是加密保管箱現在 Proxy 會將金鑰儲存在 Edge 的加密鍵/值對應 (KVM) 中。

10. 在外掛程式中改寫預設目標網址 (PR 74)

您也可以覆寫目標端點通訊埠,然後選擇 HTTP 或 HTTPS。修改這些項目 變數中的變數:req.targetPortreq.targetSecure.如要選擇 HTTPS,請將 req.targetSecure 設為 true;請設為 false。如果您將 req.targetSecure 設為 true,請參閱此討論 執行緒

11. 初步支援 OAuth 權杖驗證 (PR 125 頁)

您可以將 Edge Microgateway 設為使用 OAuth 權杖進行驗證,而非 使用者名稱/密碼。如要使用 OAuth 權杖,請在 edgemicro 中使用以下參數 設定 指令:

-t, --token <token>

例如:

edgemicro configure -o docs -e test -t <your token>

已修正 v2.4.3 版的錯誤

  • 修正了付費機構必須正確執行 Edgemicro-auth Proxy 的問題。現在, 您也可以將 Edge Microgateway 與試用機構搭配使用。(PR 5)
  • 修正串流未完成資料,但結束處理常式的問題 仍在執行中導致傳送部分回應。(PR 71)
  • 修正私有雲安裝項目的自訂設定目錄失敗問題 識別出來。(PR 110)
  • 修正用戶端與 Edge Microgateway 之間雙向安全資料傳輸層 (SSL) 的問題。(PR 第 70 頁)。
  • 修正問題:API 金鑰的 Proxy 基本路徑必須以斜線結尾 才能正常運作但不需在基本路徑結尾處加上斜線。 (PR 48)

2.3.5 版本

新功能和強化項目 2.3.5 版

Proxy 篩選

您可以篩選 Edge Microgateway 執行個體將處理的微型閘道 Proxy。 Edge Microgateway 啟動時,會下載 與其他資源建立關聯請使用下列設定限制 可進行處理例如,以下設定可限制微閘道使用 Proxy 會處理三個項目:edgemicro_proxy-1edgemicro_proxy-2edgemicro_proxy-3:

proxies:
  - edgemicro_proxy-1
  - edgemicro_proxy-2
  - edgemicro_proxy-3

Analytics 資料遮蓋

加入全新設定,即可防止要求路徑資訊顯示在 Edge 中 數據分析將下列程式碼新增至微閘道設定,以遮蓋要求 URI,和/或 要求路徑請注意,URI 包含要求的主機名稱和路徑部分。

analytics:
  mask_request_uri: 'string_to_mask'
  mask_request_path: 'string_to_mask'

2.3.3 版

新功能和強化項目 2.3.3 版

以下是此版本的新功能和強化功能。

停用自動變更輪詢

如要關閉自動變更輪詢,請在微型閘道中設定這個屬性 config:

disabled_config_poll_interval: true

根據預設,定期輪詢會擷取對 Edge 所做的變更 (產品變更、 微閘道感知 Proxy 等),以及對本機設定檔所做的變更。預設 輪詢時間間隔為 600 秒 (五分鐘)。

在外掛程式中重寫目標網址

如要動態覆寫外掛程式中的預設目標網址,請修改這些變數。 req.targetHostnamereq.targetPath.

新的外掛程式函式簽名

新增了新的外掛程式函式簽章,可提供目標回應做為 引數。這讓外掛程式更容易存取目標回應。

function(sourceRequest, sourceResponse, targetResponse, data, cb)

簡化預設記錄輸出作業

依預設,記錄服務現在會忽略下載的 Proxy、產品和 JWT 的 JSON。 如要變更為預設輸出這些物件,請在開始時設定 DEBUG=* Edge Microgateway。例如:

DEBUG=* edgemicro start -o docs -e test -k abc123 -s xyz456

自訂設定路徑已新增至 CLI

根據預設,微閘道設定檔位於 ./config/config.yaml 中。在 init 中 設定和啟動指令,現在您可以在指令列中指定自訂設定路徑。例如:

edgemicro start -o docs -e test -k abc123 -s xyz456 -c /home/microgateway/config

已修正 v2.3.3 版的錯誤

  • 已修正大型要求/回應期間的記憶體流失問題。
  • 外掛程式的執行順序已修正。現在,其運作方式與先前在 說明文件。
  • 外掛程式累積要求外掛程式對於 GET 要求不會再停止運作。
  • 累積回應外掛程式中缺少回應主體,現在的問題已修正 發生錯誤。

版本 2.3.1

安裝附註

某些舊版 Edge Microgateway 可讓您透過下載 ZIP 檔來安裝軟體 檔案。系統不再支援這些 ZIP 檔案。如要安裝 Edge Microgateway,您必須使用:

npm install -g edgemicro

請參閱安裝主題, 瞭解詳情

新功能和強化項目 2.3.1 版

以下是此版本的新功能和強化功能。

篩選 Proxy

您可透過全新設定,篩選 Edge Microgateway 在該情況下會載入的 Proxy 啟動。之前,微閘道會載入所有可微門感知的 Proxy (名為 Edgemicro_*) 擷取自您在 Edgemicro 中指定的 Edge 機構/環境 設定指令這項新功能可篩選 Proxy 清單,讓 Edge Microgateway 只會載入您指定的外掛程式。只要將 Proxy 元素新增至微門 設定檔,如下所示:

edge micro:
proxies:
    - edgemicro_[name]
    - edgemicro_[name]
    ...

舉例來說,假設您的 Edge 有 50 個 edgemicro_* Proxy org/env,包括名為 edgemicro_fooedgemicro_bar 的容器。你可以 告訴微門,只使用以下兩種 Proxy:

edge micro:
proxies:
    - edgemicro_foo
    - edgemicro_bar

啟動時,微型閘道只能呼叫指定的 Proxy。任何嘗試 呼叫其他從 Edge 機構/環境下載的微閘道感知 Proxy 也會發生錯誤

在外掛程式中設定目標要求標頭

如果想新增或修改目標要求標頭,請參考以下兩個基本模式: 傳入的要求包含資料 (如 POST 要求內),以及資料沒有的 ( 傳入簡單的 GET 要求)。

假設傳入的要求包含資料,而您想要設定要求 指定 HTTP 流量在舊版的 Edge Microgateway 中,您無法 在這種情況下,您應正確設定目標標頭。

這種模式的關鍵在於,首先累積來自用戶端的所有傳入資料。接著, onend_request() 函式,請使用新函式 request.setOverrideHeader(name, value) 自訂標頭。

以下是說明如何執行這項作業的外掛程式程式碼範例。當中設定的標頭 系統會將 onend_request 傳送至目標:

module.exports.init = function(config, logger, stats) {


  function accumulate(req, data) {
    if (!req._chunks) req._chunks = [];
    req._chunks.push(data);
  }

  return {

    ondata_request: function(req, res, data, next) {
      if (data && data.length > 0) accumulate(req, data);
      next(null, null);
    },

    onend_request: function(req, res, data, next) {
      if (data && data.length > 0) accumulate(req, data);
      var content = Buffer.concat(req._chunks);
      delete req._chunks;
      req.setOverrideHeader('foo', 'bar');
      req.setOverrideHeader('content-length', content.length);
      next(null, content);
    },


    onerror_request: function(req, res, data, next) {
      next(null, null);
    }

  };

}

如果要求未包含資料,您可以在 onrequest() 處理常式。這個模式並非新模式,先前已經過記錄 並用於 Edge Microgateway 隨附的範例外掛程式中。

onrequest: function(req, res, next) {
      debug('plugin onrequest');
      req.headers['x-foo-request-id'] = "bar";
      req.headers['x-foo-request-start'] = Date.now();
      next();
    }

無須停機即可重新載入功能

變更 Edge Microgateway 設定後,即可載入設定 不會導致任何訊息消失完成這項變更後,Edge Microgateway 一律會在叢集模式下啟動, 且--cluster選項已從「edgemicro start」中移除 指令

此外,我們還新增了三個新的 CLI 指令。您必須在 執行 Edgemicro start 指令的同一個目錄:

  • edgemicro status:檢查 Edge Microgateway 是否 是否正在執行
  • edgemicro stop:停止 Edge Microgateway 叢集。
  • edgemicro reload - 重新載入 Edge Microgateway 不必停機

在完全不停機的情況下自動重新載入設定

Edge Microgateway 定期載入新設定,並在任何情況下執行重新載入 已變更。意見調查會判斷在 Edge 上所做的任何變更 (產品變更、可感知微型閘道), Proxy 等) 以及對本機設定檔所做的變更。預設的輪詢時間間隔為 600 秒 (五分鐘)。您可以將微閘道設定檔中的預設值變更為 如下:

edgemicro:
    config_change_poll_interval: [seconds]

將版本資訊新增至 CLI

--version 標記已新增至 CLI。取得最新版本的 Edge Microgateway,請使用:

edgemicro --version

全新 Edge Microgateway 伺服器 SSL 選項

除了上述伺服器,Edge Microgateway 現在也支援下列伺服器 SSL 選項 keycert

選項 說明
pfx 含有私密金鑰、憑證和 CA 憑證的 pfx 檔案路徑 PFX 格式的用戶端清單
passphrase 包含私密金鑰或 PFX 通關密語的字串。
ca 包含 PEM 格式的信任憑證清單檔案路徑。
ciphers 字串,說明要使用的加密方式,並用「:」分隔。
rejectUnauthorized 如為 true,則會根據提供的 CA 清單驗證伺服器憑證。如果 驗證失敗,系統傳回錯誤。
secureProtocol 要使用的 SSL 方法。例如,SSLv3_method 將 SSL 強制更新為版本 3。
servername SNI (伺服器名稱指示) TLS 擴充功能的伺服器名稱。

將記錄檔傳送至 stdout

您可以使用新的配置設定將記錄資料傳送至標準輸出:

edgemicro:
  logging:
    to_console: true  

詳情請參閱 管理記錄檔

2.1.2 版

以下是此版本的新功能和強化功能。

允許設定自訂 API 端點

授權 Proxy 有新可設定的端點,支援使用 進行自訂驗證服務這些端點包括:

  • edgeconfig:verify_api_key_url
  • edgeconfig:products

如需詳細資訊,請參閱 使用自訂驗證服務

2.1.1 版

以下是此版本的新功能和強化功能。

部署與跨平台相容的驗證 Proxy

我們做出了強化措施,用來部署 Edge Microgateway 授權的指令 Windows 系統與 Edge 相容。

2.1.0 版

新功能和強化功能 21.0 版

以下是新功能和改善項目:

指定用戶端 SSL/TLS 選項

您可以使用一組新的設定來指定 SSL/TSL 連線的用戶端選項 只要設定成「自動重新啟動」 和「在主機維護期間」選項即可詳情請參閱 使用用戶端 SSL/TSL 選項

2.0.11 版

安裝附註 2.0.11 版

某些舊版 Edge Microgateway 可讓您透過下載 ZIP 檔來安裝軟體 檔案。系統不再支援這些 ZIP 檔案。如要安裝 Edge Microgateway,您必須使用:

npm install -g edgemicro

請參閱安裝主題, 瞭解詳情

新功能和強化項目 2.0.11 版

以下是新功能和改善項目:

在啟動時指定通訊埠

start 指令可讓您指定通訊埠編號來覆寫 設定檔您也可以使用 PORT 環境變數來指定通訊埠編號。詳情請見 start command

視需要保留驗證標頭

新的設定 keepAuthHeader 可讓您保留 在要求中傳送的授權標頭。如果設為 true,驗證標頭會傳遞至 目標。詳情請參閱 OAuth 屬性

使用自訂授權服務

如果您要使用自己的自訂服務處理驗證,請將 Edge Microgateway 設定檔中的 authUri 值,指向您的服務。適用對象 詳細資料,請參閱 使用自訂驗證服務

2.0.4 版

Edge Microgateway 2.0.4 版已於 2016 年 5 月 25 日推出。

新功能和強化項目 2.0.4 版

這個版本新增的功能和強化項目如下。

支援產品中的資源路徑

Edge Microgateway 現在支援產品中的資源路徑。資源路徑可讓您限制 會根據 Proxy 路徑後置字串指定 API 的存取權。詳細解說如何建立產品及設定 資源路徑,請參閱「建立 API 產品

支援 npm 全域安裝

您現在可以使用 npm -g (global) 選項安裝 Edge Microgateway。詳情請參閱 請參閱 npm 說明文件

2.0.0 版

Edge Microgateway 2.0.0 版於 2016 年 4 月 18 日推出。

新功能和強化項目 2.0.0 版

這個版本新增的功能和強化項目如下。

單一程序伺服器

Edge Microgateway 現已成為單一程序伺服器。不再採用兩種程序模型 其中一個程序 (舊稱「代理程式」) 會啟動 Edge Microgateway 上傳資料集之後,您可以運用 AutoML 自動完成部分資料準備工作這個全新架構讓自動化和容器化變得更輕鬆。

命名空間設定檔

設定檔現在使用機構和環境進行命名空間,因此多個 Microgateway 執行個體可在同一個主機上執行。您可以在 ~/.edgemicro 找到設定檔 執行 Edge Microgateway config 指令之後

新環境變數

目前有 4 個環境變數:EDGEMICRO_ORG、EDGEMICRO_ENV、EDGEMICRO_KEY、 EDGEMICRO_SECRET。如果您在系統中設定這些變數,就不需指定 當您使用指令列介面 (CLI) 設定和啟動邊緣時 Microgateway。

快取設定

如果 Edge Microgateway 在沒有問題的情況下重新啟動,就會使用快取設定檔 就會連線至 Apigee Edge

叢集模式

現在可以選擇在叢集模式中啟動 Edge Microgateway 的選項。叢集模式可讓您 多核心系統的優勢微型閘道會使用 Node.js 叢集模組使用這項功能。詳情 請參閱 Node.js 說明文件。

已修正 v2.0.0 版的錯誤

外掛程式事件生命週期現在可正確處理含有新程式碼程式碼的非同步程式碼 回呼。

1.1.2 版本

Edge Microgateway 1.1.2 版已於 2016 年 3 月 14 日推出。

新功能和強化項目 1.1.2 版

這個版本新增的功能和強化項目如下。

提升效能

Edge Microgateway 現在可正確使用 Node.js HTTP 代理程式,提升連線集區。這個 改善功能可在高負載情況下提升效能和整體穩定性。

遠端偵錯工具支援

您可以將 Edge Microgateway 設為透過遠端偵錯工具 (例如「node-inspector」node-inspector) 執行。

新的設定檔位置

現在設定 Edge Microgateway 時,agent/config/default.yaml 檔案會 已複製到 ~./edgemicro/config.yaml

記錄檔輪替

您可以運用新的設定屬性指定 Edge Microgateway 的旋轉間隔 。

已修正 v1.1.2 版的錯誤

下列錯誤已在 1.1.2 版中修正。

說明
與地端部署邊緣搭配使用的 Edgemicro-internal Proxy 的 Java 呼叫,現在使用正確的 MGMT 伺服器
從代理程式中移除 typescript 依附元件。
修正使用精簡部署選項時的 CLI 錯誤。
修正憑證邏輯依附元件參照。