密钥状态:对 CMK 的影响 - AWS Key Management Service
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

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

密钥状态:对 CMK 的影响

客户主密钥 (CMKs) 始终处于下列状态之一:EnabledDisabledPendingImportPendingDeletionUnavailable

下表显示了在处于每种状态的AWS KMS上运行的 CMK API 操作的预期状态是成功 (处理)、失败 (X) 还是仅在特定条件下成功 (?)。对于已导入密钥材料的 CMKs,结果通常不同。

对称 CMKs 可以处于 EnabledDisabledPendingImportPendingDeletionUnavailable 状态。非对称 CMKs 可能处于 EnabledDisabledPendingDeletion 密钥状态。

状态仅适用于 UnavailableCMK 中的 自定义密钥存储。当 CMK 有意与其 自定义密钥存储 集群断开连接时,Unavailable 中的 自定义密钥存储 为 AWS CloudHSM。您可以查看和管理不可用的CMKs,但不能在加密操作中使用它们。

此表省略了创建和管理自定义密钥存储的 CreateKeyGenerateRandom 和 操作,因为它们不会影响现有 CMK。

注意

API 已启用 Disabled 待导入 待删除 Unavailable
CancelKeyDeletion

[4]

[4]

[4]

[4]、[13]

CreateAlias

[3]

CreateGrant

[1]

[5]

[2] 或 [3]

Decrypt

[1]

[5]

[2] 或 [3]

[11]

DeleteAlias
DeleteImportedKeyMaterial

[9]

[9]

(无影响)

[9]

[9]

DescribeKey
DisableKey

[5]

[3]

[12]

DisableKeyRotation

[7]

[1] 或 [7]

[6]

[3] 或 [7]

[7]

EnableKey

[5]

[3]

[12]

EnableKeyRotation

[7]

[1] 或 [7]

[6]

[3] 或 [7]

[7]

Encrypt

[1]

[5]

[2] 或 [3]

[11]

GenerateDataKey

[1]

[5]

[2] 或 [3]

[11]

GenerateDataKeyPair

[1]

[5]

[2] 或 [3]

[11]

GenerateDataKeyPairWithoutPlaintext

[1]

[5]

[2] 或 [3]

[11]

GenerateDataKeyWithoutPlaintext

[1]

[5]

[2] 或 [3]

[11]

GetKeyPolicy
GetKeyRotationStatus

[7]

[7]

[6]

[7]

[7]

GetParametersForImport

[9]

[9]

[8] 或 [9]

[9]

GetPublicKey

[1]

不适用

[2] 或 [3]

不适用
ImportKeyMaterial

[9]

[9]

[8] 或 [9]

[9]

ListAliases
ListGrants
ListKeyPolicies
ListKeys
ListResourceTags
ListRetirableGrants
PutKeyPolicy
ReEncrypt

[1]

[5]

[2] 或 [3]

[11]

RetireGrant
RevokeGrant
ScheduleKeyDeletion

[3]

Sign

[1]

不适用

[2] 或 [3]

不适用
TagResource

[3]

UnTagResource

[3]

UpdateAlias

[10]

UpdateKeyDescription

[3]

验证

[1]

不适用

[2] 或 [3]

不适用

表详细信息

  • [1] DisabledException: <CMK ARN> is disabled.

  • [2] DisabledException: <CMK ARN> is pending deletion.

  • [3] KMSInvalidStateException: <CMK ARN> is pending deletion.

  • [4] KMSInvalidStateException: <CMK ARN> is not pending deletion.

  • [5] KMSInvalidStateException: <CMK ARN> is pending import.

  • [6] UnsupportedOperationException: <CMK ARN> origin is EXTERNAL which is not valid for this operation.

  • [7] 如果 CMK 已导入密钥材料或位于自定义密钥存储中:UnsupportedOperationException

  • [8] 如果 CMK 已导入密钥材料:KMSInvalidStateException

  • [9] 如果 CMK 无法导入或未导入密钥材料:UnsupportedOperationException

  • [10] 如果源 CMK 处于待删除状态,则命令成功。如果目标 CMK 处于待删除状态,则命令将失败,并显示错误:KMSInvalidStateException : <CMK ARN> is pending deletion.

  • 111 KMSInvalidStateException: <CMK ARN> is unavailable. 您无法在不可用的CMK上执行此操作。

  • 121 操作成功,但 CMK 的密钥状态在变得可用之前不会发生变化。

  • &lt;&gt; 虽然自定义密钥存储中的 CMK 处于待删除状态,但其密钥状态将保持 PendingDeletion,即使 CMK 变得不可用也是如此。这样,您就可以在等待期内随时取消删除 CMK。