【问题标题】:Amazon S3 changing object permissions retroactivelyAmazon S3 追溯更改对象权限
【发布时间】:2018-05-10 09:08:27
【问题描述】:

我有一个包含现有文件的当前 S3 存储桶。

存储桶最初是公共存储桶,我将其权限更改为私有,但我已经上传了具有public readCannedACL 权限的对象。

如何将所有上传对象的权限更改为私有 CannedACL?

【问题讨论】:

    标签: amazon-web-services amazon-s3 permissions bucket


    【解决方案1】:

    aws s3 cp s3://my-bucket/ s3://my-bucket/ --metadata x-amz-meta-updated=1 --recursive --acl private

    【讨论】:

    • 这是正确的答案,将对象复制到自身而不更新元数据是行不通的,因此需要“--metadata x-amz-meta-updated=1”。
    【解决方案2】:

    您可以使用AWS Command-Line Interface (CLI) 批量更改权限。

    您将使用aws s3 cp 命令。虽然这是一个 copy 命令,但它也可以用于复制文件就地,这只是更改它们的权限。

    例如:

    aws s3 cp s3://my-bucket/ s3://my-bucket/ --recursive --acl bucket-owner-full-control
    

    bucket-owner-full-control:对象所有者和存储桶所有者都获得了对对象的 FULL_CONTROL。)

    另见:Amazon S3 File Permissions, Access Denied when copied from another account

    【讨论】:

    • 元数据有问题 - 我如何也复制元数据?
    猜你喜欢
    • 2013-05-29
    • 2019-12-05
    • 2015-10-11
    • 2015-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-11-04
    相关资源
    最近更新 更多