启用自动密钥轮换 - Amazon Key Management Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

启用自动密钥轮换

默认情况下,当您为 KMS 密钥启用自动密钥轮换时,Amazon KMS 会每年为该 KMS 密钥生成新的加密材料。您还可以指定自定义 rotation-period 来定义启用自动密钥轮换后,Amazon KMS 轮换密钥材料的天数,以及此后每次自动轮换间隔的天数。

自动密钥轮换具有以下优点:

  • KMS 密钥的属性,包括其密钥 ID密钥 ARN、区域、策略和权限,在密钥轮换时不会发生改变。

  • 您无需更改引用该 KMS 密钥的密钥 ID 或密钥 ARN 的应用程序或别名。

  • 轮换密钥材料不会影响 Amazon Web Services 服务 中任何 KMS 密钥的使用。

  • 启用密钥轮换后,Amazon KMS 将在轮换周期定义的下一个轮换日期自动轮换 KMS 密钥。您无需记住或计划更新。

您可以在 Amazon KMS 控制台中或使用 EnableKeyRotation 操作启用自动密钥轮换。要启用自动密钥轮换,您需要 kms:EnableKeyRotation 权限。有关 Amazon KMS 权限的更多信息,请参阅 权限参考

  1. 登录到 Amazon Web Services Management Console,然后通过以下网址打开 Amazon Key Management Service(Amazon KMS)控制台:https://console.aws.amazon.com/kms

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

  3. 在导航窗格中,选择客户托管密钥。(您无法启用或禁用 Amazon 托管式密钥 的轮换。它们每年自动轮换一次。)

  4. 选择 KMS 密钥的别名和密钥 ID。

  5. 选择 Key rotation (密钥轮换) 选项卡。

    Key rotation(密钥轮换)选项卡仅显示在具有 Amazon KMS 生成的密钥材料(即 Origin(源)为 AWS_KMS)的对称加密 KMS 密钥(包括多区域对称加密 KMS 没有)的详细信息页面上。

    您不能自动轮换非对称 KMS 密钥、HMAC KMS 密钥、具有导入的密钥材料的 KMS 密钥或自定义密钥存储中的 KMS 密钥。但是,您可以手动轮换它们

  6. 自动密钥轮换部分,选择编辑

  7. 对于密钥轮换,请选择启用

    注意

    如果 KMS 密钥被禁用或待删除,则 Amazon KMS 不会轮换密钥材料,并且您无法更新自动密钥轮换状态和轮换周期。启用 KMS 密钥或取消删除以更新自动密钥轮换配置。有关详细信息,请参阅 密钥轮换的工作原理Amazon KMS 密钥的密钥状态

  8. (可选)键入介于 90 到 2560 天之间的轮换周期。默认值为 365 天。如果您未指定自定义轮换周期,则 Amazon KMS 将每年轮换密钥材料。

    您可以使用 kms:RotationPeriodInDays 条件键限制主体可以指定的轮换周期值。

  9. 选择保存

您可以使用 Amazon Key Management Service(Amazon KMS)API 启用自动密钥轮换,并查看任何客户托管密钥的当前轮换状态。这些示例使用 Amazon Command Line Interface (Amazon CLI),但您可以使用任何受支持的编程语言。

EnableKeyRotation 操作可以为指定 KMS 密钥启用自动密钥轮换。要标识此操作中的 KMS 密钥,请使用其密钥 ID密钥 ARN。在默认情况下,客户托管密钥的密钥轮换处于禁用状态。

您可以使用 kms:RotationPeriodInDays 条件键限制主体可以在 EnableKeyRotation 请求的 RotationPeriodInDays 参数中指定的值。

以下示例对指定的对称加密 KMS 密钥启用密钥轮换,轮换周期为 180 天,并使用 GetKeyRotationStatus 操作查看结果。

$ aws kms enable-key-rotation \ --key-id 1234abcd-12ab-34cd-56ef-1234567890ab \ --rotation-period-in-days 180 $ aws kms get-key-rotation-status --key-id 1234abcd-12ab-34cd-56ef-1234567890ab { "KeyId": "1234abcd-12ab-34cd-56ef-1234567890ab", "KeyRotationEnabled": true, "RotationPeriodInDays": 180, "NextRotationDate": "2024-02-14T18:14:33.587000+00:00" }