首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在策略中可以使用什么条件来强制执行S3存储桶需要服务器端加密?

在策略中可以使用什么条件来强制执行S3存储桶需要服务器端加密?
EN

Stack Overflow用户
提问于 2019-06-05 15:52:56
回答 2查看 157关注 0票数 0

将使用显式拒绝规则来防止创建不包括服务器端加密选项( AES或KMS)的S3存储桶。明确否认是防止意外创造的首选结果。

我可以通过控制台找到在创建中指定的选项,而不是cli create-bucket命令。

据我所知,put-bucket-encryption命令可以用作后续管理控制,检测/纠正控制可以通过Lambda或其他方法实现,但这绕过了主动控制需求。

预期的结果将是应用一个策略,显式地拒绝创建、修改、读取内容,以及关于没有伴随属性SSEAlgorithm或函数等效的桶的策略不匹配或不匹配。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-07 08:04:37

我首先作为一个评论,OP认为这是一个合理的缓解:

拒绝所有使用AWS控制台的用户创建桶的访问权限。

编写一个特殊的服务,它将根据首选设置创建一个桶(当需要扩展到不同的调用时)。另一个副作用是,您可以简化额外的需求,比如检查桶名(例如company_project_module_xxx)和文档(将创建者/任务时间/注释添加到文档桶中)。

票数 0
EN

Stack Overflow用户

发布于 2019-06-05 18:12:21

代码语言:javascript
复制
{
      "Sid": "DenyNoEncryption",
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:PutObject",
      "Resource": "arn:aws:s3:::test_bucket/*",
      "Condition": {
        "StringNotEquals": {
          "s3:x-amz-server-side-encryption": "AES256"
        }
      }
    }

这就是策略在没有sse的情况下拒绝将对象添加到s3桶的方式。

如果您需要停止在没有sse的情况下创建s3存储桶。将s3操作更改为"s3:CreateBucket" --我认为这对您来说是有效的。然后将资源更改为*

代码语言:javascript
复制
{
      "Sid": "DenyNoEncryption",
      "Effect": "Deny",
      "Principal": {
        "AWS": "*"
      },
      "Action": "s3:CreateBucket",
      "Resource": "*",
      "Condition": {
        "StringNotEquals": {
          "s3:x-amz-server-side-encryption": "AES256"
        }
      }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56464011

复制
相关文章

相似问题

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