首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我忘了勾选S3 replication的"change ownership“框--有没有办法更新现有的复制对象?

我忘了勾选S3 replication的"change ownership“框--有没有办法更新现有的复制对象?
EN

Stack Overflow用户
提问于 2020-09-25 01:54:31
回答 1查看 228关注 0票数 1

我正在使用S3复制来跨亚马逊网络服务账户复制存储桶(两者位于同一区域)。

当我最初设置复制时,我没有注意到为了允许访问目标存储桶中的对象,我必须选中“更改所有权”框(原始存储桶使用AES-256加密)。

我意识到这一点后,我已经有几个to复制到另一个帐户。

有没有办法更新目标存储桶中现有的复制对象以允许访问,这样我就不需要重新复制它们了?

仅供参考-要执行我使用的跨区域复制,请使用AWS知识中心页面中所示的复制到自身的方法(请参阅“使用跨区域复制或相同区域复制”部分)-

https://aws.amazon.com/premiumsupport/knowledge-center/s3-large-transfer-between-buckets/

如果有人知道更快或更好的方法,我洗耳恭听!

EN

回答 1

Stack Overflow用户

发布于 2020-09-25 06:31:07

您可以遍历所有对象并更新ACL。这需要使用来自对象的原始“所有者”帐户的凭据来完成。

代码语言:javascript
复制
aws s3api put-object-acl --bucket XX --key XX --acl bucket-owner-full-control

我刚刚做了一个实验:

Account

  • 将对象从Account-A复制到Account-B

  • Account-B无法运行上述命令,因为它不是存储桶owner

  • Account-A可以运行命令

  • 之后,Account-B可以运行该命令,表明所有权已更改

最简单的方法是编写一个小脚本(例如在Python语言中),获取存储桶的列表并使用原始帐户的凭据发出put_object_acl()命令。或者,如果您对编写该命令没有信心,只需创建一个包含文件名和生成上述命令的公式的Excel电子表格即可。

最好是从与存储桶相同的区域中的亚马逊EC2实例运行命令,因为通信将比从您自己的计算机执行更快。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64051867

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档