当源存储桶和目标存储桶具有不同的 AccessKey & Secret 时,如何使用 AWS CopyObjectRequest



我有 2 个不同的存储桶,具有不同的访问密钥和密钥。所以我创建了 2 个不同的 s3Client 对象来与它们交互。

我正在尝试弄清楚如何使用CopyObjectRequest将文件从存储桶A(源(复制到存储桶B(目标(。

此 CopyObjectRequest 类的 SourceBucket 属性是存储桶的简单字符串名称。

除非您有一组具有适当权限的凭证来对两个存储桶执行所有必需的操作,否则无法使用CopyObjectRequest

这使用服务 API 的PUT Object Copy操作,即发送到目标存储桶的请求,指示目标存储桶直接从源存储桶获取对象,该对象具有针对目标存储桶签署请求的用户的身份并存储副本......无需下载和重新上传对象。 此模型中不支持第二组凭证,因为不会与源存储桶发生直接交互 - 与源存储桶的交互发生在 S3 内部,数据传输也是如此,甚至跨区域也是如此。

使用两组凭据的唯一选项是下载,然后上传。

相关内容

最新更新