Json 如果对象不使用 aws s3 加密或 aws:kms 加密,则拒绝将对象上传到 aws s3 的策略脚本
Json policy script for denying object upload to aws s3 if the object doesn't uses aws s3 encryption or aws:kms encryption
您好,我想为我的存储桶创建一个 s3 策略,该策略拒绝用户上传不使用 aws s3 加密或 aws kms 加密(它必须使用其中一种加密)的对象。这是策略生成器 https://awspolicygen.s3.amazonaws.com/policygen.html
的 link
我已生成此政策。
{
"Id": "Policy1631518070654",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1631518063107",
"Action": [
"s3:PutObject"
],
"Effect": "Deny",
"Resource": "arn:aws:s3:::webserver7/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
},
"StringNotLike": {
"s3:x-amz-server-side-encryption-aws-kms-key-id": "aws:kms"
}
},
"Principal": "*"
}
]
}
我们可以按如下方式解释政策....“如果对象不使用 aws s3 加密 AND aws:kms 加密则拒绝上传。
但是我们不能同时使用两种加密方式。所以我想要政策如下。
"如果对象不使用 aws s3 加密 或 aws:kms 加密则拒绝对象上传。
如果你想要OR
,你需要有两个语句:
{
"Id": "Policy1631518070654",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1631518063107",
"Action": [
"s3:PutObject"
],
"Effect": "Deny",
"Resource": "arn:aws:s3:::webserver7/*",
"Condition": {
"StringNotLike": {
"s3:x-amz-server-side-encryption-aws-kms-key-id": "aws:kms"
}
},
"Principal": "*"
},
{
"Sid": "Stmt16315180631072",
"Action": [
"s3:PutObject"
],
"Effect": "Deny",
"Resource": "arn:aws:s3:::webserver7/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
}
},
"Principal": "*"
}
]
}
目前无法添加此类政策。尝试仅对单一加密使用策略。
您好,我想为我的存储桶创建一个 s3 策略,该策略拒绝用户上传不使用 aws s3 加密或 aws kms 加密(它必须使用其中一种加密)的对象。这是策略生成器 https://awspolicygen.s3.amazonaws.com/policygen.html
的 link我已生成此政策。
{
"Id": "Policy1631518070654",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1631518063107",
"Action": [
"s3:PutObject"
],
"Effect": "Deny",
"Resource": "arn:aws:s3:::webserver7/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
},
"StringNotLike": {
"s3:x-amz-server-side-encryption-aws-kms-key-id": "aws:kms"
}
},
"Principal": "*"
}
]
}
我们可以按如下方式解释政策....“如果对象不使用 aws s3 加密 AND aws:kms 加密则拒绝上传。
但是我们不能同时使用两种加密方式。所以我想要政策如下。
"如果对象不使用 aws s3 加密 或 aws:kms 加密则拒绝对象上传。
如果你想要OR
,你需要有两个语句:
{
"Id": "Policy1631518070654",
"Version": "2012-10-17",
"Statement": [
{
"Sid": "Stmt1631518063107",
"Action": [
"s3:PutObject"
],
"Effect": "Deny",
"Resource": "arn:aws:s3:::webserver7/*",
"Condition": {
"StringNotLike": {
"s3:x-amz-server-side-encryption-aws-kms-key-id": "aws:kms"
}
},
"Principal": "*"
},
{
"Sid": "Stmt16315180631072",
"Action": [
"s3:PutObject"
],
"Effect": "Deny",
"Resource": "arn:aws:s3:::webserver7/*",
"Condition": {
"StringNotEquals": {
"s3:x-amz-server-side-encryption": "AES256"
}
},
"Principal": "*"
}
]
}
目前无法添加此类政策。尝试仅对单一加密使用策略。