簡體   English   中英

使用 lambda 從外部 s3 存儲桶下載文件

[英]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 cpaws s3 sync命令。 在您的情況下,如果您希望同步文件的內容,您可以使用aws s3 sync

最后一個選項是使用跨區域復制 - Amazon Simple Storage Service ,但這僅適用於不同區域的存儲桶。 存儲桶可以屬於不同的 AWS 賬戶。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM