创建标准密钥

您可以使用 UI 创建标准加密密钥,也可以使用 Hyper Protect Crypto Services 密钥管理服务 API 以编程方式创建标准加密密钥。

使用 UI 创建标准密钥

创建服务实例后,请完成以下步骤以使用 UI 创建标准密钥。

如果启用 Hyper Protect Crypto Services 实例的双重授权设置,请记住添加到服务的任何密钥都需要两个用户的授权才能删除密钥。

  1. 登录 UI

  2. 转至 菜单 > 资源列表 以查看资源列表。

  3. 从 IBM Cloud 资源列表,选择 Hyper Protect Crypto Services 的已供应实例。

  4. 要创建新密钥,请在侧边菜单中选择 KMS 密钥 选项卡。

  5. 在“密钥”表中,单击 添加密钥,然后选择 创建密钥

    指定密钥的详细信息:

    表 1. 描述用于创建密钥的设置
    设置 描述
    密钥类型 要在 Hyper Protect Crypto Services 中管理的密钥类型。 从密钥类型列表中,选择 标准密钥
    密钥名称 密钥的人类可读的唯一别名,以便可轻松识别密钥。 为保护隐私,请确保密钥名称不包含个人可标识信息 (PII),例如,姓名或位置。
    密钥别名 (可选) 要分配给密钥以方便识别的一个或多个唯一的人类可读别名。 别名大小可以是 2-90 个字符。 最多可以为密钥设置五个密钥别名,每个别名以逗号分隔。

    注: 每个别名必须是字母数字,区分大小写,并且不能包含空格或除短划线 (-) 或下划线 (_) 以外的特殊字符。别名不能是 V 4 UUID,也不能是 Hyper Protect Crypto Services 保留名称: allowed_ipkeykeysmetadatapolicypoliciesregistrationregistrationsringringsrotatewrapunwraprewrapversionversions

    密钥环标识 从包含现有密钥环的列表中选择密钥环。 如果未指定密钥环,那么该密钥将添加到 default 密钥环。 有关密钥环的更多信息,请参阅 管理密钥环
    到期日期 (可选) 设置密钥到期的日期和时间。 在到期日期之后,密钥将进入“已取消激活”状态。 有关密钥状态的更多信息,请参阅 监视加密密钥的生命周期
    描述 (可选) 添加密钥的扩展描述。 它的长度需要为 2 到 240 个字符。
  6. 填写完密钥的详细信息后,单击 创建密钥 以确认。

使用 API 创建标准密钥

通过对以下端点执行 POST 调用来创建标准密钥。

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

  2. 使用以下 cURL 命令调用 Hyper Protect Crypto Services 密钥管理服务 API

    curl -X POST \
      "https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys" \
      -H "authorization: Bearer <IAM_token>" \
      -H "bluemix-instance: <instance_ID>" \
      -H "content-type: application/vnd.ibm.kms.key+json" \
      -H "x-kms-key-ring: <key_ring_ID>" \
      -H "correlation-id: <correlation_ID>" \
      -H "prefer: <return_preference>" \
      -d '{
              "metadata": {
                  "collectionType": "application/vnd.ibm.kms.key+json",
                  "collectionTotal": 1
              },
              "resources": [
                  {
                      "type": "application/vnd.ibm.kms.key+json",
                       "name": "<key_name>",
                       "aliases": [alias_list],
                       "description": "<key_description>",
                       "expirationDate": "<YYYY-MM-DDTHH:MM:SS.SSZ>",
                       "extractable": <key_type>
                  }
              ]
          }'
    

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

    表 2. 描述使用 API 添加标准密钥所需的变量
    变量 描述
    region 区域缩写(例如,us-southau-syd),表示 Hyper Protect Crypto Services 服务实例所在的地理区域。 有关更多信息,请参阅区域服务端点
    port 必需。 API 端点的端口号。
    IAM_token 您的 IBM Cloud 访问令牌。 在 cURL 请求中包含 IAM 令牌的完整内容,包括 Bearer 值。 有关更多信息,请参阅 检索访问令牌
    instance_ID 指定给您的 Hyper Protect Crypto Services 服务实例的唯一标识。 有关更多信息,请参阅 检索实例标识
    key_ring_ID 可选。 要将密钥分配到的目标密钥环的唯一标识。 如果未指定,那么头将自动设置为 default ,并且密钥将属于指定 Hyper Protect Crypto Services 实例中的缺省密钥环。

    有关更多信息,请参阅 管理密钥环

    correlation_ID 用于跟踪和关联事务的唯一标识。
    return_preference 可选: 用于更改 POSTDELETE 操作的服务器行为的头。

    return_preference 变量设置为 return=minimal 时,服务仅返回响应实体主体中的密钥元数据,例如密钥名称和标识值。 将变量设置为 return=representation 时,服务将返回密钥资料和密钥元数据。

    key_name 密钥的人类可读的唯一名称,以便可轻松识别密钥。

    **重要说明:**为保护隐私,请勿存储个人数据作为密钥的元数据。

    alias_list 可选。 分配给密钥的一个或多个唯一的人类可读别名。

    重要信息: 为了保护隐私,请勿将个人数据存储为密钥的元数据。

    每个别名必须是字母数字,区分大小写,并且不能包含除短划线 (-) 或下划线 (_) 以外的空格或特殊字符。别名不能是 V 4 UUID,也不能是 Hyper Protect Crypto Services 保留名称: allowed_ipkeykeysmetadatapolicypoliciesregistrationregistrationsringringsrotatewrapunwraprewrapversionversions。别名大小可以是 2-90 个字符 (含)。

    key_description 可选:密钥的扩展描述。

    **重要说明:**为保护隐私,请勿存储个人数据作为密钥的元数据。

    YYYY-MM-DD

    HH:MM:SS.SS

    可选:密钥在系统中到期的日期和时间(RFC 3339 格式)。 如果省略了 expirationDate 属性,那么键不会到期。
    key_type 布尔值,用于确定密钥资料是否可以离开服务。

    extractable 属性设置为 true 时,服务会创建可以存储在应用程序或服务中的标准密钥。

    为保护个人数据的机密性,在向服务添加密钥时,避免输入个人可标识信息 (PII),例如,姓名或位置。 有关 PII 的更多示例,请参阅 NIST Special Publication 800-122的 2.2 部分。

    成功的 POST /v2/keys 响应会返回密钥的标识值以及其他元数据。 该标识是分配给密钥的唯一标识,用于后续调用 Hyper Protect Crypto Services 密钥管理服务 API。

  3. 可选:通过运行以下调用来获取 Hyper Protect Crypto Services 服务实例中的密钥,以验证是否创建了密钥。

    curl -X GET \
      https://<instance_ID>.api.<region>.hs-crypto.appdomain.cloud/api/v2/keys \
      -H 'accept: application/vnd.ibm.collection+json' \
      -H 'authorization: Bearer <IAM_token>' \
      -H 'bluemix-instance: <instance_ID>' \
      -H 'correlation-id: <correlation_ID>' \
    

下一步

要了解有关以编程方式管理密钥的更多信息,请 查看 Hyper Protect Crypto Services 密钥管理服务 API 参考文档