当SSE-S3使用AES256加密存储桶(对象)并将其公开时。桶的内容是可见的。但是,AWS KMS不会引发以下错误:
Requests specifying Server Side Encryption with AWS KMS managed keys require AWS Signature Version 4.
最终用户如何能够加密AES256中的对象?
对Amazon S3管理密钥(SSE-S3)使用服务器端加密 - 每个 使用强多因子的唯一密钥对对象进行加密 加密。作为额外的安全措施,它会加密密钥本身 使用常规旋转的主密钥。亚马逊S3服务器端 加密使用最强的块密码之一,256位 高级加密标准(AES-256),用于加密您的数据。
根据这一点,我的理解是,如果一个对象被加密,它需要解密密钥或在AWS世界中访问正在解密它的密钥。请解释AES256与KMS的不同之处。 (除了AWS在KMS上提供的关键策略)
答案 0 :(得分:5)
S3中的服务器端加密始终为AES256,无论您使用的是SSE-S3还是SSE-KMS。
在这两种情况下,S3都使用密钥透明地加密对象以进行存储,并根据请求解密对象。在任何一种情况下,访问该对象的用户都看不到加密对象。
使用SSE-S3,S3拥有并控制密钥,因此上传或下载权限包括S3访问其访问对象所需密钥的隐式权限。
无论您使用SSE-S3还是SSE-KMS,加密级别都是相同的,但SSE-KMS对访问对象施加了更严格的安全限制,包括强制使用HTTPS和签名版本4.