[英]Download files from external s3 bucket using lambda
我想使用 lambda 從外部 s3 帳戶下載備份文件。 我有訪問密鑰 ID、秘密訪問密鑰、存儲桶名稱和區域名稱。 然后將它與我的私人 s3 存儲桶同步。 是否可以? 如何?
看來你的要求是:
Account-A
獲取存儲在Bucket-A
中的數據Account-B
Bucket-B
Account-B
最簡單的方法是使用CopyObject()
命令,因為它可以直接在存儲桶之間(甚至在區域之間!)傳輸數據,而無需下載和上傳。
為此,您將需要一組對Bucket-A
具有讀取權限並在Bucket-B
上具有寫入權限的憑據。 這可以是:
Account-A
User-A
中的 IAM User-A
可以讀取Bucket-A
和存儲Bucket-B
上的Bucket-B
桶策略,允許User-A
寫入Bucket-B
,或Account-B
User-B
中的 IAM User-B
可以寫入Bucket-B
,存儲Bucket-A
上的Bucket-A
桶策略允許User-B
進行讀取訪問使用存儲桶策略意味着一組憑據可以使用CopyObject()
命令進行讀取和寫入。 否則,您需要使用一組憑據下載對象,使用另一組憑據上傳對象。 這不是一個聰明的方法。
請參閱: 提供對 S3 存儲桶中對象的跨賬戶訪問
運行復制命令的最簡單方法是使用AWS 命令行界面 (CLI) aws s3 cp
或aws s3 sync
命令。 在您的情況下,如果您希望同步文件的內容,您可以使用aws s3 sync
。
最后一個選項是使用跨區域復制 - Amazon Simple Storage Service ,但這僅適用於不同區域的存儲桶。 存儲桶可以屬於不同的 AWS 賬戶。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.