pre-signed-url · L6

S3/SigV4 標準與可遷移性

S3/SigV4 標準與可遷移性

一句話:pre-signed URL 不是 AWS 或 MinIO 的專屬招式,而是「S3 API + SigV4 簽章」這套公開規範的一部分——任何相容 S3 的儲存服務都吃這一套,換 store 幾乎只換 endpoint。

這解釋了 Level 4 的現象

Level 4 提過:AWS SDK 產的 URL、MinIO SDK 產的 URL,格式一模一樣、互相認得。原因就在這——它們都只是照 SigV4 規範吐出那串 X-Amz-*,沒有任何一家的私料。所以「選哪套 SDK」是習慣問題,不是相容問題。

誰支援這一套

它們大多支援同一套 presigned URL 機制。你的 code 幾乎不用改——換 store 只換 endpoint(回想 ServiceURL / ForcePathStyle)。

可遷移性的實際價值

本機開發用 MinIO、正式環境用 S3 或 R2,同一套產 URL 的 code 跑遍全部。學會 pre-signed URL 等於學會一個跨廠商的通用技能,不被綁死在一家——這也是為什麼值得把它學透。

一個提醒

基本的 GET/PUT presigned URL 各家都通,但進階功能支援度不一——POST policy、multipart、SigV4a 這些,用之前先查該 store 的相容性文件,別假設「S3 有的它就有」。

參考來源