AWSS3设置BucketPolicy强制加密

云计算

AWS S3在上传和下载的时候,默认会使用TLS的方式进行加密和解密。这个具体是在哪里配置的呢?

成都创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:网站制作、成都网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的坊子网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

最简单的方式是在S3里面,当我们创建一个新的Bucket的时候,我们可以在console上选择默认加密,如下面所示

默认可以选择SSE-S3或者SSE-KMS服务加密。后者安全性更高 不过会有一些额外费用。

如果在创建的时候没有进行选择,我们还可以通过设置Bucket Policy来进行加密。在AWS里面,所有的服务都是API,因此所有的设定都可以转换成头文件里面对应的参数。比如说,我们可以通过禁止头文件里面没有加密参数的请求进行上传操作。

具体操作如下

在对应的bucket里面, 进入Permission - Bucket Policy - 最下面选择 Policy Generator

基本设置

Type of Policy:S3 Bucket Policy
Effect:Deny
Principal:

AWS Service: Amazon S3
Actions: PutObject
ARN: arn:aws:s3:::XXXXXX
Condition:stringnotequals
key:s3-x-amz-server-side-encryption
value:aws:kms

生成器会自动生成下列配置文档 拷贝到对应的editor里面。 咦 居然报错!

解决方法很简单,需要在bucket后面添加一个通配符。这个应该是aws的一个bug

点击保存就行了。

现在来测试一下。

首先上传一个文件,选择不加密

结果失败

重新上传一次,这次选择 AWS KMS master-key

上传成功!


分享名称:AWSS3设置BucketPolicy强制加密
分享路径:http://ybzwz.com/article/cgjcch.html