2017-08-24 67 views
1

有沒有一種方法可以使用AWS CLI爲S3存儲桶中的對象創建預簽名url?AWS S3通過CLI預先簽名的URL

我知道可以使用SDK來完成,但使用CLI可以嗎?

我發現這個在AWS文檔中的一個,但無法完成命令:

s3cmd signurl s3://BUCKET/OBJECT <expiry_epoch|+expiry_offset> 

任何幫助嗎?

回答

11

你試過aws s3 presign

爲Amazon S3對象生成預先簽名的URL。這允許接收預簽名URL的任何人 用HTTP GET請求檢索S3對象。對於sigv4請求,該區域需要明確配置 。

這將產生將在3600秒到期的URL(默認)

aws s3 presign s3://mybucket/myobject 

這將產生將在300秒內

aws s3 presign s3://mybucket/myobject --expires-in 300 

輸出

https://mybucket.s3.amazonaws.com/myobject?AWSAccessKeyId=AKIAJXXXXXXXXXXXXXXX&Expires=1503602631&Signature=ibOGfAovnhIF13DALdAgsdtg2s%3D 
到期的URL
+0

我正在嘗試這個第一次。 我不知道我們如何使用AWS CLI爲S3對象創建簽名的URL。 –

+0

謝謝你的回答。會檢查。 那麼最長可以有7天嗎? –

+0

那麼你可以使用這個上傳到特定文件夾嗎? – red888

-1

因此,預簽名URL的命令是:

aws s3 presign s3://bucket-address/ --expires-in 300 

但是要注意的是;我們可以有預先簽名的URL,適用於單個文件/對象級別,而不是目錄級別。

如果錯了,很高興被糾正。

+0

這看起來似乎無法爲存儲桶生成預先簽名的url。 –

相關問題