问题: 服务器端加密(使用 S3 托管或 KMS 托管密钥)文件是否会转移到 Glacier?如果是,它们是否使用 S3 或 KMS 密钥解密,然后使用 Glacier 的内部密钥再次加密,因为 Glacier 中的所有对象都使用内部 AES 256 密钥加密?
问题陈述: 我在 S3 中使用 KMS 托管密钥加密了一些文件。我有一个生命周期规则,可以在 1 天后存档到 Glacier,但即使在 3 天后,文件仍将存储类显示为“标准”。
问题: 服务器端加密(使用 S3 托管或 KMS 托管密钥)文件是否会转移到 Glacier?如果是,它们是否使用 S3 或 KMS 密钥解密,然后使用 Glacier 的内部密钥再次加密,因为 Glacier 中的所有对象都使用内部 AES 256 密钥加密?
问题陈述: 我在 S3 中使用 KMS 托管密钥加密了一些文件。我有一个生命周期规则,可以在 1 天后存档到 Glacier,但即使在 3 天后,文件仍将存储类显示为“标准”。
文档中没有任何内容表明生命周期策略中的存储类更改与 SSE-KMS 不兼容。
在存档时,S3 对象按原样(以 SSE-KMS 加密形式)移动到 Glacier,并由 Glacier 再次加密。查看主题 RSS 提要 查看主题 RSS 提要
— susan@aws https://forums.aws.amazon.com/thread.jspa?messageID=786916
S3 显然没有解密和重新加密,而是似乎只是再次加密了对象的加密版本,因此 SSE-C 也应该兼容。
请注意,生命周期策略最多需要 24 小时才能真正开始转换对象,并且新对象将在对象初始创建后 24 到 48 小时之间匹配“1 天”规则。
如果有大量对象,您可能需要使用 aws-cli 来尝试查看是否有任何对象已迁移。
aws s3api list-objects [options] --output-format=text | grep GLACIER
我的生命周期规则具有特定于文件名的前缀,例如“com/folder-name/Daily-”。我创建了新的生命周期规则,以便它们以最后一个父文件夹名称和尾部斜杠“com/folder-name/”结尾。
在进行此更改并等待 24 多个小时后,未加密和 SSE-kms 加密文件都已转换到 Amazon Glacier。
转换后,我知道它们都使用 Glacier 管理的密钥在内部加密,如本常见问题解答中所述。https://aws.amazon.com/glacier/faqs/#security。
我查看了 AWS 文档和论坛,但找不到这个问题的直接答案。
但我发现,即使CRR也不处理SSE-C和SSE-KMS加密对象(在未复制部分下)。因此,我假设转换规则也无法处理 SSE-C 和 SSE-KMS 加密文件,因为Glacier仅支持AES-256加密。