Encryption 我的S3对象是否在静止状态下加密?

Encryption 我的S3对象是否在静止状态下加密?,encryption,amazon-s3,Encryption,Amazon S3,我已指定以下bucket策略来强制对PUT进行加密: { "Version": "2012-10-17", "Id": "PutObjPolicy", "Statement": [ { "Sid": "DenyUnEncryptedObjectUploads", "Effect": "Deny", "Principal": "*", "Action": "s3:

我已指定以下bucket策略来强制对PUT进行加密:

{
    "Version": "2012-10-17",
    "Id": "PutObjPolicy",
    "Statement": [
        {
            "Sid": "DenyUnEncryptedObjectUploads",
            "Effect": "Deny",
            "Principal": "*",
            "Action": "s3:PutObject",
            "Resource": "arn:aws:s3:::com.my.bucket/*",
            "Condition": {
                "StringNotEquals": {
                    "s3:x-amz-server-side-encryption": "aws:kms"
                }
            }
        }
    ]
}

上传的bucket对象的属性表明它们是加密的

但是

我的“bucket属性”表示我没有使用默认加密:

我可以从控制台下载这些“加密”的图像,并在下载后在本地查看它们,如果它们真的加密了,我希望这是不可能的


那么…我是否实现了“静态加密”?

当您上传的对象将加密显示为aws kms时,这意味着它在静态时已明确加密。您直接从S3UI进行上传,默认情况下加密为none。上传后,您将看到加密为“无”。静态加密意味着您的数据以加密形式存储在s3磁盘/存储基础架构上。然而,这并不意味着它将以加密格式显示在用户界面上或下载后。当您通过sdk下载时,它会自动解密数据。你总是得到解密的数据。类似地,s3ui显示解密的内容。您想要实现的是客户端加密。服务器端加密是静态加密。进行客户端加密时,数据将以加密格式传输到s3。同样,当您下载时,客户端必须解密数据

注:术语“rest”是指数据处于静止状态时(数据传输到s3时不处于转换状态)。 服务器端加密—这有助于静态加密

客户端加密—这有助于在转换和静止时进行加密

使用ssl也可以单独实现转换中的加密