如何通过CLI关闭AWS s3存储桶中对象的加密?

时间:2020-05-25 12:38:13

标签: amazon-s3

我正尝试在Google控制台中验证我的S3存储桶以进行调查,为什么它的URL在Google安全浏览中被标记为可能有害。

使用S3存储桶进行验证的唯一方法是HTML文件。据我了解的验证,我需要该文件可公开访问,而无需任何其他标题/授权url查询以及诸如https:// {bucket} .s3.amazonaws.com / google {personal_id}之类的具有直接url的东西.html

我允许使用ACL公开访问存储桶对象。但是由于KMS默认加密并出现以下错误,因此仍无法下载:

<Error>
    <Code>InvalidArgument</Code>
    <Message>
        Requests specifying Server Side Encryption with AWS KMS managed keys require AWS Signature Version 4.
    </Message>
    <ArgumentName>Authorization</ArgumentName>
    <ArgumentValue>null</ArgumentValue>
    <RequestId>D99DE7A5CA2AAFC3</RequestId>
    <HostId>
         3Wot7SGS0sVmiaPz3Fj5riyWKzPxCRpYaQEk13FUjOdS0O4881txJ0Ze1mkmfIgZqon7te+8eWI=
    </HostId>
</Error>

我发现了如何在不触摸Aws控制台中存储桶的默认加密的情况下关闭对象的KMS加密的方法:

AWS console object encryption option

我可以转到对象的属性,然后选择加密“无”。之后,该对象最终可以下载。 但是我找不到如何在AWS CLI中执行相同的操作。 put-object命令仅允许设置加密SHA256和KMS,但不允许任何一种。

问题是:如何使用AWS CLI将现有的s3对象加密更改为“无”?

1 个答案:

答案 0 :(得分:0)

将现有s3对象加密更改为“无”的唯一方法是不加密就重新放置对象。