我对源 S3 存储桶具有只读访问权限。我无法更改此源帐户和存储桶的权限或任何类型的内容。我不拥有此帐户。
我想将源存储桶中的所有文件同步到目标存储桶。我拥有包含目标存储桶的帐户。
对于我不拥有的源存储桶和我拥有的目标存储桶,我有一组单独的凭据。
有没有办法使用 AWS CLI 使用两组凭证在存储桶之间进行同步?
aws s3 sync s3://source-bucket/ --profile source-profile s3://destination-bucket --profile default
如果没有,我如何在我拥有的目标存储桶上设置可以与 CLI 同步的权限?
最佳答案
内置S3复制机制,在API层面,要求提交请求至 目标存储桶,识别请求中的源存储桶和对象,并使用 单例具有从源读取和写入目标的授权的一组凭据。
这是从一个存储桶复制到另一个存储桶而无需下载和上传文件的唯一支持方式。
标准溶液位于 http://docs.aws.amazon.com/AmazonS3/latest/dev/example-walkthroughs-managing-access-example2.html .
您可以授予他们的用户写入您的存储桶的权限,或者他们可以授予您的用户访问其存储桶的权限……但是如果没有两个帐户所有者的共谋建立一个存储桶,就不可能在不下载和重新上传文件的情况下从一个存储桶复制到另一个存储桶具有这两种权限的一组凭据。
关于amazon-web-services - AWS CLI 使用多个凭证同步 S3 存储桶,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38830816/