手动清除密钥

删除 90 天后,将自动清除已删除的密钥。 如果要在自动清除密钥之前清除该密钥,请确保为您分配了 Hyper Protect Crypto Services 实例的 KMS 密钥清除 角色。 只有在删除密钥 4 小时后,才能手动将其清除。

在清除密钥之前,请确保您了解 删除和清除密钥的概念,并查看 注意事项

要手动清除密钥,需要为您分配 KMS 密钥清除 角色。 即使是 管理者 也无法清除密钥。 有关服务访问角色的更多信息,请参阅 IAM 服务访问角色

在 UI 中清除密钥

如果您希望使用图形界面来清除密钥,那么可以通过完成以下步骤来使用 UI:

  1. 登录 UI
  2. 菜单>资源列表查看您的资源列表。
  3. 从 IBM Cloud 资源列表,选择 Hyper Protect Crypto Services 的已供应实例。
  4. KMS 密钥页面,使用按键表来浏览您的服务中的密钥。
  5. 选择要清除的密钥,并确保状态为“已销毁”。 单击 操作 图标 "操作" 图标 以打开密钥的选项列表。
  6. 从选项菜单中,单击 清除键
  7. 选中此框以确认操作,然后单击 清除密钥

如果在删除密钥后 4 小时内执行清除操作,那么无法清除密钥。

使用 API 清除密钥

您可以通过对以下端点进行 DELETE 调用来清除已删除的密钥:

https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/purge
  1. 检索服务和认证凭证以与服务中的密钥一起使用

  2. 检索要删除的密钥的 ID。

    您可以通过 检索密钥列表 或通过访问 UI 在服务实例中找到密钥的标识。

  3. 运行以下命令cURL命令永久删除密钥和内容。

    curl -X DELETE \
      "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys/<key_ID>/purge" \
      -H "authorization: Bearer <IAM_token>" \
      -H "bluemix-instance: <instance_ID>" \
      -H "x-kms-key-ring: <key_ring_ID>" \
      -H "prefer: <return_preference>"
    

    根据下表替换示例请求中的变量。

    表 1. 描述使用 API 清除密钥所需的变量
    变量 描述
    region 必需。 地区缩写,例如 us-south 或者 au-syd,代表您的Hyper Protect Crypto Services实例驻留。 有关更多信息,请参阅区域服务端点
    port 必需。 API 端点的端口号。
    key_ID 必需。 您要删除的密钥的唯一标识。
    IAM_token 必需。 您的 IBM Cloud 访问令牌。 在 cURL 请求中包含 IAM 令牌的完整内容,包括 Bearer 值。 有关详细信息,请参阅For more information, see 检索访问令牌
    instance_ID 必需。 分配给您的Hyper Protect Crypto Services实例。 有关详细信息,请参阅For more information, see 检索实例 ID
    key_ring_ID 可选。 密钥所属的密钥环的唯一标识。 如果未指定,那么 Hyper Protect Crypto Services 将在与指定实例关联的每个密钥环中搜索密钥。 因此,建议为更优化的请求指定密钥环标识。 在没有 x-kms-key-ring 头的情况下创建的密钥的密钥环标识为 default。 有关更多信息,请参阅 管理密钥环
    return_preference 改变服务器行为的标头 POSTDELETE 运营。 当您设置 return_preference 变量 return=minimal,服务返回删除成功响应。 当您将变量设置为 return=representation,服务将返回密钥材料和密钥元数据。

    如果 return_preference 变量设置为 return=representation,详细信息 DELETE 请求在响应实体主体中返回。

    以下 JSON 对象显示了示例返回值。

    {
        "metadata": {
          "collectionType": "application/vnd.ibm.kms.key+json",
          "collectionTotal": 1
        },
        "resources": [
          {
            "type": "application/vnd.ibm.kms.key+json",
            "id": "...",
            "name": "Root-key",
            "description": "...",
            "state": 5,
            "extractable": false,
            "keyRingID": "default",
            "crn": "...",
            "imported": false,
            "creationDate": "YYYY-MM-DDTHH:MM:SSZ",
            "createdBy": "...",
            "algorithmType": "AES",
            "algorithmMetadata": {
              "bitLength": 256,
              "mode": "CBC_PAD"
            },
            "algorithmBitSize": 256,
            "algorithmMode": "CBC_PAD",
            "lastUpdateDate": "YYYY-MM-DDTHH:MM:SSZ",
            "lastRotateDate": "YYYY-MM-DDTHH:MM:SSZ",
            "dualAuthDelete": {
              "enabled": true,
              "keySetForDeletion": true,
              "authExpiration": "YYYY-MM-DDTHH:MM:SSZ"
            },
            "deleted": true,
            "deletionDate": "YYYY-MM-DDTHH:MM:SSZ",
            "deletedBy": "...",
            "purgeAllowed": true,
            "purgeAllowedFrom": "YYYY-MM-DDTHH:MM:SSZ",
            "purgeScheduledOn": "YYYY-MM-DDTHH:MM:SSZ"
          }
        ]
    }
    

    有关可用参数的详细说明,请参阅Hyper Protect Crypto Services密钥管理服务 API 参考文档

下一步