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

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

查找密钥的 KMS Amazon CloudHSM 密钥

如果您知道集群中kmsuser拥有的密钥的密钥引用或 ID,则可以使用该值来标识密钥存储中关联的 KMS Amazon CloudHSM 密钥。

在您的 Amazon CloudHSM 集群中为 KMS 密钥 Amazon KMS 创建密钥材料时,它会在密钥标签中写入 KMS 密钥的 Amazon 资源名称 (ARN)。除非您已更改标签值,否则可在 CloudHSM CLI 中使用 key list 命令来识别与 Amazon CloudHSM 密钥关联的 KMS 密钥。

备注

以下过程使用 Amazon CloudHSM 客户端 SDK 5 命令行工具 CloudHSM C LI。CloudHSM CLI 将 key-handle 替换为 key-reference

2025 年 1 月 1 日, Amazon CloudHSM 将终止对客户端 SDK 3 命令行工具、CloudHSM 管理实用程序 (CMU) 和密钥管理实用程序 (KMU) 的支持。有关客户端 SDK 3 命令行工具和客户端 SDK 5 命令行工具之间区别的更多信息,请参阅《Amazon CloudHSM 用户指南》中的从客户端 SDK 3 CMU 和 KMU 迁移到客户端 SDK 5 CloudHSM CLI

要运行这些过程,你需要暂时断开 Amazon CloudHSM 密钥存储的连接,这样你才能以 kmsuser CU 的身份登录。

注意

虽然自定义密钥存储已断开连接,但在自定义密钥存储中创建 KMS 密钥或在加密操作中使用现有 KMS 密钥的所有尝试都将失败。此操作可以阻止用户存储和访问敏感数据。

识别与密钥参考关联的 KMS 密钥

以下过程演示如何在 CloudHSM CLI 中使用 key list 命令和 key-reference 属性筛选器,在集群中查找用作 Amazon CloudHSM 密钥存储中特定 KMS 密钥的密钥材料的密钥。

  1. 如果 Amazon CloudHSM 密钥存储尚未断开连接,请断开密钥库的连接,然后以身份登录kmsuser,如中所述如何断开和登录

  2. 使用 CloudHSM CLI 中的 key list 命令,按 key-reference 属性进行筛选。指定 verbose 参数以包含匹配密钥的所有属性和密钥信息。如果不指定 verbose 参数,则密钥列表操作将仅返回匹配密钥的密钥参考和标签属性。

    在运行此命令之前,请将示例 key-reference 替换为您账户中的有效密钥 ID。

    aws-cloudhsm > key list --filter attr.key-reference="0x0000000000120034" --verbose { "error_code": 0, "data": { "matched_keys": [ { "key-reference": "0x0000000000120034", "key-info": { "key-owners": [ { "username": "kmsuser", "key-coverage": "full" } ], "shared-users": [], "cluster-coverage": "full" }, "attributes": { "key-type": "aes", "label": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "id": "0xbacking-key-id", "check-value": "0x29bbd1", "class": "my_test_key", "encrypt": true, "decrypt": true, "token": true, "always-sensitive": true, "derive": false, "destroyable": true, "extractable": false, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": true, "sign": false, "trusted": false, "unwrap": true, "verify": false, "wrap": true, "wrap-with-trusted": false, "key-length-bytes": 32 } } ], "total_key_count": 1, "returned_key_count": 1 } }
  3. 注销并重新连接 Amazon CloudHSM 密钥库,如中所述。如何注销并重新连接

识别与配对密钥 ID 关联的 KMS 密钥

密钥存储中使用 KMS 密钥进行加密操作的所有 CloudTrail 日志条目都包含带有customKeyStoreIdbackingKeyIdadditionalEventData字段。 Amazon CloudHSM backingKeyId 字段中返回的值与 CloudHSM 密钥 id 属性关联。您可以按 id 属性筛选密钥列表操作,识别与特定 backingKeyId 关联的 KMS 密钥。

  1. 如果 Amazon CloudHSM 密钥存储尚未断开连接,请断开密钥库的连接,然后以身份登录kmsuser,如中所述如何断开和登录

  2. 在 CloudHSM CLI 中使用 key list 命令和属性筛选器,在集群中查找用作 Amazon CloudHSM 密钥存储中特定 KMS 密钥的密钥材料的密钥。

    以下示例演示如何按 id 属性进行筛选。 Amazon CloudHSM 将 id 值识别为十六进制值。要按id属性筛选密钥列表操作,必须先将您在 CloudTrail 日志条目中标识的backingKeyId值转换为可 Amazon CloudHSM 识别的格式。

    1. 使用以下 Linux 命令将 backingKeyId 转换为十六进制表示形式。

      echo backingKeyId | tr -d '\n' | xxd -p

      以下示例演示了如何将 backingKeyId 字节数组转换为十六进制表示形式。

      echo 5890723622dc15f699aa9ab2387a9f744b2b884c18b2186ee8ada4f556a2eb9d | tr -d '\n' | xxd -p 35383930373233363232646331356636393961613961623233383761396637343462326238383463313862323138366565386164613466353536613265623964
    2. backingKeyId 的十六进制表示形式前面加上 0x

      0x35383930373233363232646331356636393961613961623233383761396637343462326238383463313862323138366565386164613466353536613265623964
    3. 使用转换后的 backingKeyId 值按 id 属性进行筛选。指定 verbose 参数以包含匹配密钥的所有属性和密钥信息。如果不指定 verbose 参数,则密钥列表操作将仅返回匹配密钥的密钥参考和标签属性。

      aws-cloudhsm > key list --filter attr.id="0x35383930373233363232646331356636393961613961623233383761396637343462326238383463313862323138366565386164613466353536613265623964" --verbose { "error_code": 0, "data": { "matched_keys": [ { "key-reference": "0x0000000000120034", "key-info": { "key-owners": [ { "username": "kmsuser", "key-coverage": "full" } ], "shared-users": [], "cluster-coverage": "full" }, "attributes": { "key-type": "aes", "label": "arn:aws:kms:us-west-2:111122223333:key/1234abcd-12ab-34cd-56ef-1234567890ab", "id": "0x35383930373233363232646331356636393961613961623233383761396637343462326238383463313862323138366565386164613466353536613265623964", "check-value": "0x29bbd1", "class": "my_test_key", "encrypt": true, "decrypt": true, "token": true, "always-sensitive": true, "derive": false, "destroyable": true, "extractable": false, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": true, "sign": false, "trusted": false, "unwrap": true, "verify": false, "wrap": true, "wrap-with-trusted": false, "key-length-bytes": 32 } } ], "total_key_count": 1, "returned_key_count": 1 } }
  3. 注销并重新连接 Amazon CloudHSM 密钥库,如中所述。如何注销并重新连接