NeoFS S3 Gateway v0.45.1 透過 SDK RC21 優化讀寫效能
重點速覽
- •NeoFS S3 Gateway v0.45.1 引入了寫入路徑優化,在 PUT 操作中移除至少一次中間資料複製,降低記憶體分配和 CPU 開銷。
- •範圍 GET 請求現在可以在單次網路呼叫中同時擷取物件標頭和負載資料,無需額外的往返,有利於串流媒體和部分下載工作流程。
- •擴展存取控制列表於容器建立時同步套用,消除了後續請求的需求,並關閉了新建立容器在沒有指定存取策略的情況下存在的窗口。
- •元資料修復從 GetObject 回應中過濾內部 NeoFS 系統屬性,確保僅返回使用者自訂的元資料,降低多租戶部署中的資訊洩漏風險。
- •此修補程式包含 gRPC 依賴更新至 v1.82.1,可緩解 HTTP/2 框架泛洪阻斷服務攻擊,並修復 xDS 權限比對中的授權繞過漏洞。

Neo SPCC 已於 8 月 4 日發布 NeoFS S3 Gateway v0.45.1。此修補更新為 NeoFS 去中心化儲存網路的 S3 相容介面引入三項效能優化和一項元資料修正。由於 Amazon S3 API 已成為集中式與去中心化平台物件儲存的事實標準,S3 閘道的吞吐量與正確性改善直接影響開發者使用熟悉工具遷移或在 NeoFS 上建構應用程式的便利程度。
其中兩項效能增強由 NeoFS SDK Go RC21 驅動,該 SDK 於數日前隨 NeoFS Node v0.55.0 一同發布。
此修補程式建立在 7 月的 S3 Gateway v0.45.0 重大版本之上——該版本引入了命名空間設定、簡化的 EACL 規則,並移除了舊版存取盒支援——現有的 v0.45.0 使用者無需進行遷移。
寫入緩衝與範圍 GET 優化
第一項優化為物件負載寫入器實作了 io.ReaderFrom 介面,此功能由 SDK RC21 引入。透過在 PUT 操作中移除至少一次中間資料複製,此更新降低了寫入路徑上的記憶體分配和 CPU 開銷(#1320)。
第二項優化改善了範圍 GET 請求。先前,這些請求需要一次額外的往返來取得物件標頭,然後才能擷取指定範圍的資料。借助 SDK RC21 的類 HTTP 位元組範圍參數,閘道現在可以在單次網路呼叫中同時擷取標頭和範圍負載(#1319)。此增強顯著有利於依賴 S3 範圍讀取的串流媒體、部分下載和多部分上傳工作流程。
擴展存取控制列表於容器建立時同步套用
擴展存取控制列表(EACL)現在於容器建立時在單次網路呼叫中同步套用,消除了後續請求的需求(#1304)。此調整降低了 S3 儲存桶建立時的延遲,並關閉了一個短暫的漏洞窗口——在此窗口中,新建立的容器可能在沒有指定存取策略的情況下存在。
系統屬性修正
一項關鍵的正確性修復從 GetObject 元資料回應中過濾掉內部 NeoFS 系統屬性(#1321)。在先前的版本中,這些協定層級的屬性會與使用者自訂的元資料一起包含在 S3 回應中,無意間將內部實作細節暴露給用戶端。此修復確保僅返回使用者自訂的元資料,使系統行為與預期的 S3 API 行為一致,並降低在多租戶部署中資訊洩漏的風險。
依賴更新
除了 SDK RC21 升級之外,v0.45.1 還整合了多項安全性與維護更新,包括:
golang.org/x/cryptov0.52.0golang.org/x/netv0.55.0google.golang.org/grpcv1.82.1
gRPC 更新專門解決了 HTTP/2 框架泛洪阻斷服務攻擊的緩解措施,並修復了 xDS 權限比對中的授權繞過場景。這類 HTTP/2 漏洞在更廣泛的基礎設施生態系中已被積極利用,因此及時更新依賴是暴露給不受信任用戶端的儲存閘道的基本安全措施。
完整的發布說明可在此處查閱:https://github.com/nspcc-dev/neofs-s3-gw/releases/tag/v0.45.1