AWS Key Management Service
开发人员指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

删除导入的密钥材料

当您导入密钥材料时,可以指定一个到期日期。当密钥材料过期后,AWS KMS 将删除密钥材料,并且客户主密钥 (CMK) 将变为不可用。您也可以根据需要删除密钥材料。无论是等待密钥材料过期还是手动将其删除,效果都是一样的。AWS KMS 删除密钥材料,CMK 的密钥状态更改为待导入,CMK 变为不可用。要再次使用该 CMK,您必须重新导入相同的密钥材料。

删除密钥材料会立即影响到 CMK,但您可以通过将相同密钥材料重新导入 CMK 来反向执行密钥材料的删除过程。相反,删除 CMK 操作是不可逆的。如果您计划删除密钥而且所需等待期到期,AWS KMS 会删除密钥材料及与该 CMK 关联的所有元数据。

要删除密钥材料,您可以使用 AWS 管理控制台或 AWS KMS API。通过发出 HTTP 请求或通过 AWS 开发工具包命令行工具之一,您可以直接使用该 API。

删除密钥材料对与 AWS KMS 集成的 AWS 服务有何影响

在您删除密钥材料后,CMK 会立即变得不可用。但是,不会立即影响 AWS 服务使用的任何数据密钥。这意味着,删除密钥材料可能不会立即影响受 CMK 保护的所有数据和 AWS 资源,但最终会对其产生影响。

有多个 AWS 服务都与 AWS KMS 进行了集成,以保护您的数据。其中一些服务(如 Amazon EBSAmazon Redshift)使用 AWS KMS 中的客户主密钥 (CMK) 生成数据密钥,然后使用数据密钥加密您的数据。只要明文数据密钥所保护的数据还在经常使用,这些密钥就会保留在内存中。

例如,考虑以下情景:

  1. 您创建加密的 EBS 卷并指定带有已导入密钥材料的 CMK。Amazon EBS 要求 AWS KMS 使用您的 CMK 来为该卷生成加密数据密钥。Amazon EBS 使用该卷存储加密数据密钥。

  2. 当您将 EBS 卷附加到一个 EC2 实例时,Amazon EC2 会要求 AWS KMS 使用您的 CMK 以解密 EBS 卷的加密数据密钥。Amazon EC2 将明文数据密钥存储在管理程序内存中并使用它来加密 EBS 卷的磁盘 I/O。只要 EBS 卷附加到 EC2 实例,数据密钥就会保留在内存中。

  3. 您删除从 CMK 中导入的密钥材料,这会使其变得不可用。这不会立即影响 EC2 实例或 EBS 卷。原因是,Amazon EC2 使用纯文本数据密钥 — 而不是 CMK — 来对所有磁盘 I/O 进行加密,而卷附加到实例。

  4. 但是,当加密的 EBS 卷从 EC2 实例分离时,Amazon EBS 将从内存中删除该明文密钥。下次将加密的 EBS 卷附加到 EC2 实例时,附加会失败,因为 Amazon EBS 无法使用 CMK 来解密卷的加密数据密钥。要再次使用该 EBS 卷,您必须向 CMK 重新导入相同的密钥材料。

删除密钥材料(控制台)

您可以使用 AWS 管理控制台删除密钥材料。

注意

AWS KMS 最近引入了新的控制台,使您可以更轻松地组织和管理 KMS 资源。它在除了 AWS GovCloud (US)之外 AWS KMS 支持的所有 AWS 区域中可用。我们建议您通过 https://console.amazonaws.cn/kms 试用新的 AWS KMS 控制台。

原始控制台将在短时间内保持可用状态,以便您有时间熟悉新控制台。要使用原始控制台,请在 IAM 控制台中选择加密密钥,或者转到 。请通过在任意控制台中或者在此页面的右下角选择 Feedback (反馈) 来分享您的反馈。

删除密钥材料(新控制台)
  1. 登录 AWS 管理控制台并通过以下网址打开 AWS Key Management Service (AWS KMS) 控制台:https://console.amazonaws.cn/kms

  2. 要更改 AWS 区域,请使用页面右上角的区域选择器。

  3. 在导航窗格中,选择 Customer managed keys (客户托管密钥)

  4. 执行以下一项操作:

    • 选中带导入密钥材料的 CMK 对应的复选框。依次选择 Key actionsDelete key material

    • 选择带导入密钥材料的 CMK 的别名或密钥 ID。在页面的 Key Material 部分,选择 Delete key material

  5. 确认要删除该密钥材料,然后选择 Delete key material。CMK 的状态(对应于其密钥状态)更改为 Pending import (等待导入)

删除密钥材料(原始控制台)
  1. 登录 AWS 管理控制台,然后转至 。

  2. 对于 Region (区域),选择适当的 AWS 区域。请勿使用导航栏中的区域选择器(右上角)。

  3. 选择以下选项之一:

    • 选中您要删除其密钥材料的 CMK 对应的复选框。依次选择 Key actionsDelete key material

    • 选择您要删除其密钥材料的 CMK 的别名。在页面的 Key Material 部分,选择 Delete key material

  4. 确认要删除该密钥材料,然后选择 Delete key material。CMK 的密钥状态更改为 PendingImport

删除密钥材料(KMS API)

要使用 AWS KMS API 删除密钥材料,请发送 DeleteImportedKeyMaterial 请求。以下示例说明如何使用 AWS CLI 执行该操作。

1234abcd-12ab-34cd-56ef-1234567890ab 替换为您要删除其密钥材料的 CMK 的密钥 ID。在该操作中,您可以使用 CMK 的密钥 ID 或 ARN,但不能使用别名。

$ aws kms delete-imported-key-material --key-id 1234abcd-12ab-34cd-56ef-1234567890ab