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

密钥状态对客户主密钥的使用有何影响

客户主密钥 (CMK) 始终处于下列状态之一:EnabledDisabledPendingImportPendingDeletionUnavailable。下表显示了在处于每个状态的 CMK 上运行的 AWS KMS API 操作的预期状态是成功 (✓)、失败 (X) 还是仅在特定条件下成功 (?)。对于已导入密钥材料的 CMK,结果通常不同。

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

以下 API 操作不会显示在表中,因为它们不使用现有 CMK。

  • ConnectCustomKeyStore

  • CreateCustomKeyStore

  • CreateKey

  • DeleteCustomKeyStore

  • DescribeCustomKeyStores

  • DisconnectCustomKeyStore

  • GenerateRandom

  • UpdateCustomKeyStore

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]

GenerateDataKeyWithoutPlaintext

[1]

[5]

[2] 或 [3]

[11]

GetKeyPolicy
GetKeyRotationStatus

[7]

[7]

[6]

[7]

[7]

GetParametersForImport

[9]

[9]

[8] 或 [9]

[9]

ImportKeyMaterial

[9]

[9]

[8] 或 [9]

[9]

ListAliases
ListGrants
ListKeyPolicies
ListKeys
ListResourceTags
ListRetirableGrants
PutKeyPolicy
ReEncrypt

[1]

[5]

[2] 或 [3]

[11]

RetireGrant
RevokeGrant
ScheduleKeyDeletion

[3]

TagResource

[3]

UnTagResource

[3]

UpdateAlias

[10]

UpdateKeyDescription

[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.

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

  • [12] 操作成功,但 CMK 的密钥状态未更改,直到它变得可用。

  • [13] 虽然自定义密钥存储中的 CMK 处于等待删除状态,但其密钥状态保持 PendingDeletion 不变,即使 CMK 变得不可用也是如此。这允许您在等待期内随时取消删除 CMK。