pre-signed-url · L6

SigV4a

SigV4a:一次簽名、多 region 通用

一句話:SigV4a 是 SigV4 的擴充版,讓「同一個簽章能在多個 region 驗證」——為 S3 Multi-Region Access Points 這類跨區場景設計的,用非對稱 ECDSA 取代對稱 HMAC。

先想 SigV4 的限制

回想 Level 3:SigV4 的 Signing Key 是把 secret key 揉進「日期 / region / service」推出來的——所以簽章綁死單一 region,你簽的時候必須知道最終打哪個 region。碰到「一份簽章要同時能打好幾個 region」(多區存取、跨區故障轉移)就卡住了。

SigV4a 怎麼解

SigV4(你學的)SigV4a
演算法AWS4-HMAC-SHA256(對稱 HMAC)AWS4-ECDSA-P256-SHA256(非對稱 ECDSA)
regionSigning Key 綁單一 region簽章可跨多 region 驗證;簽時不必知道最終落哪區
金鑰推導每天/每 region/每 service 各推一把用同一把(從 secret 衍生的 ECDSA keypair)簽所有請求
server 存什麼共享 secret(兩邊都有)只存公鑰(非對稱的安全好處)

一句話定位

SigV4a=為「一份簽章要在多個 region 都認」而生的升級版,把對稱 HMAC 換成非對稱 ECDSA。日常單區用的 pre-signed URL 用 SigV4 就夠;碰到 Multi-Region Access Points 才需要它。

你不需要現在就會實作 SigV4a——知道它存在、知道它解決什麼問題、跟 SigV4 差在哪,就足以在討論跨區架構時接得上話。

參考來源