本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
不可用的KMS密钥如何影响数据密钥
当KMS密钥变得无法使用时,效果几乎是立竿见影的(视最终一致性而定)。密钥的密钥状态会KMS发生变化以反映其新状态,并且所有在加密操作中使用该KMS密钥的请求都将失败。
但是,对通过密钥加密的数据密钥以及由数据密钥加密的数据的影响会延迟到再次使用该密KMS钥(例如解密数据密钥)。KMS
KMS密钥可能由于多种原因而变得不可用,包括您可能执行的以下操作。
-
从包含@@ 已导入密钥材料的KMS密钥中删除密钥材料,或者允许导入的密钥材料过期。
-
断开托管 AWS CloudHSM 密钥库的KMS连接,或者从用作密钥材料的 AWS CloudHSM 集群中删除密KMS钥。
-
断开托管密钥的外部密KMS钥存储库的连接,或者任何其他干扰外部密钥存储代理的加密和解密请求的操作,包括从其外部密钥管理器中删除外部密钥。
对于许多使用数据密钥保护服务管理 AWS 服务 的资源的人来说,这种效果尤其重要。以下示例使用亚马逊弹性区块存储 (AmazonEBS) 和亚马逊弹性计算云 (AmazonEC2)。不同的 AWS 服务 使用数据密钥的方式不同。有关详细信息,请参阅 AWS 服务的“安全性”一章的“数据保护”部分。
例如,考虑以下情景:
-
您可以创建加密EBS卷并指定KMS密钥来保护它。Amazon EBS AWS KMS 要求使用您的KMS密钥为该卷生成加密的数据密钥。Amazon 将加密的数据密钥与卷的元数据一起EBS存储。
-
当您将EBS卷连接到EC2实例时,Amazon 会EC2使用您的密KMS钥来解密该EBS卷的加密数据密钥。Amazon EC2 使用 Nitro 硬件中的数据密钥,该硬件负责加密该EBS卷的所有磁盘 I/O。当EBS卷连接到EC2实例时,数据密钥仍保留在 Nitro 硬件中。
-
您执行的操作使KMS密钥无法使用。这对EC2实例或EBS卷没有立竿见影的影响。当卷连接到实例时,Amazon EC2 使用数据KMS密钥(而不是密钥)来加密所有磁盘 I/O。
-
但是,当加密EBS卷与EC2实例分离时,Amazon EBS 会从 Nitro 硬件中删除数据密钥。下次将加密EBS卷连接到EC2实例时,连接会失败,因为 Amazon EBS 无法使用该密KMS钥来解密该卷的加密数据密钥。要再次使用EBS音量,必须使KMS密钥再次可用。