默認情況下,圖片在s3中上傳時,這些網址是私有的。我可以通過在控制檯上添加權限來公開它們,但我不想爲每個圖像都做這件事,而是想自動化它。我正在使用非AWS雲服務通過url訪問圖像。由於這些網址是私密的,因此該服務無法訪問該圖片。我如何使這些網址公開到特定的服務?公開整個存儲桶不是一種選擇。如何將s3圖片網址的訪問權限授予特定的雲服務
0
A
回答
1
在創建對象時,可以通過在初始上傳請求中設置請求標頭x-amz-acl: public-read
來公開S3中的單個對象。
公衆「特殊服務」不是一個有效的概念。 S3沒有意識到哪個「服務」正在訪問它(除非「服務」恰巧是CloudFront,它具有Origin Access Identities,它可以用來授權下載,但我懷疑這不是相關的)。如果服務使用所提供的URL,則可以簡單地向服務提交預先簽名的URL,以便授權下載。
0
我寫了一個python腳本,吐出預先登記的URL。
import sys
from boto.s3.connection import S3Connection
def sign(bucket, path, access_key, secret_key, https, expiry):
c = S3Connection(access_key, secret_key)
return c.generate_url(
expires_in=long(expiry),
method='GET',
bucket = bucket,
key=path,
query_auth=True,
force_http=(not https)
)
的presigned網址可以依只要它們被授權的用戶創建的雲服務進行訪問。 Google樂於接受這些網址。人們也可以添加到期,從而避免公開整個桶。
相關問題
- 1. 如何將角色訪問權限授予特定模式
- 2. 如何授予用戶特定時間的訪問權限?
- 3. 如何授予對特定資源的訪問權限?
- 4. S3:如何授予對多個桶的訪問權限?
- 5. 如何授予SQL服務權限?
- 6. 以有限政策授予對AWS Lambda服務的訪問權
- 7. AWS IAM授予用戶只讀特定VPC的訪問權限
- 8. 授予用戶訪問特定/後續文章的權限?
- 9. 亞馬遜IAM用戶+授予對S3的訪問權限
- 10. 授予數據庫權限的不授予表的訪問權限
- 11. 如何將git訪問權限授予我的OpenShift存儲庫?
- 12. 如何授予在Oracle中授予權限的權限
- 13. 授予匿名訪問Plone中的特定網址/操作
- 14. 如何將文件權限授予組中的特定用戶?
- 15. 授予權限訪問攝像頭服務
- 16. 給本地網絡上的特定用戶授予訪問規則權限
- 17. S3 - 授予訪問權限以創建存儲區
- 18. amzon s3 boto,授予新組IAM訪問權限,403錯誤
- 19. 如何向我的服務器授予Circle CI SSH訪問權限?
- 20. 如何爲用戶授予遠程訪問mysql服務器的權限?
- 21. 如何授予對Google服務帳戶的Youtube報告API訪問權限?
- 22. @授予授權的權限拋出拒絕訪問異常
- 23. 授予特定用戶對特定(多個)文檔的訪問權限
- 24. 如何在gitlab中授予用戶特定的文件訪問權限?
- 25. 如何授予對特定文件夾的常規用戶shell訪問權限
- 26. 如何僅爲特定用戶授予對IIS上託管的WCF Web服務的訪問權限?
- 27. 授予用戶權限來訪問表
- 28. 授予特定用戶啓動/停止特定服務的權限
- 29. 授予Oracle授予權限
- 30. 授予特殊形式的管理員訪問權限
如何創建預先簽名的網址? –
通過URL訪問圖片的服務是Google Cloud Vision。 –
有許多方法,使用[cli](http://docs.aws.amazon.com/cli/latest/reference/s3/presign.html),最簡單的方法可能是'aws s3 presign'。 –