IBM Cloud Docs
使用服务端点以专用方式连接到 Hyper Protect Crypto Services

使用服务端点以专用方式连接到 Hyper Protect Crypto Services

为了确保在使用 Hyper Protect Crypto Services时增强了对数据的控制和安全性,您可以选择使用专用路由到 IBM Cloud® 服务端点。 专用路由无法通过互联网访问。 通过使用 IBM Cloud 专用服务端点功能,您可以保护数据免受来自公用网络的威胁,并以逻辑方式扩展专用网络。

了解网络访问策略

Hyper Protect Crypto Services 的网络访问策略 实例是一个额外的策略,客户可以使用该策略来阻止 Hyper Protect Crypto Services 实例从公用或专用网络获取 API 请求。

网络访问策略适用于新供应的实例和现有实例。 对于现有实例,将在设置网络访问策略后强制实施该策略。

两个选项控制网络访问 Hyper Protect Crypto Services 实例:

  • 公用和专用网络访问-这是缺省值
  • 仅专用网络访问

公用和专用网络访问

Hyper Protect Crypto Services 实例接受来自两个 public and private 端点的 API 请求。

公用和专用网络访问是缺省设置,如果未设置策略,那么将使用此设置。

例如,多个团队正在测试使用 Hyper Protect Crypto Services 实例。 开发和测试团队从外部 (公共端点) 和内部 (专用端点) IBM Cloud发出 API 请求。 您允许公共和专用 API 请求,以确保每个团队都有权访问 Hyper Protect Crypto Services 项目的此阶段中的实例。

仅专用网络访问

Hyper Protect Crypto Services 实例仅接受来自专用端点的 API 请求。

例如,开发和测试已完成,使用的解决方案 Hyper Protect Crypto Services 实例正在生产中。 出于安全原因,您希望将 API 请求限制为专用网络。 全部 Hyper Protect Crypto Services API 请求必须源自 IBM Cloud。

将网络访问策略设置为 private-only 后,您无法创建任何 Hyper Protect Crypto Services 来自公用网络的 API 调用,包括用于更改策略的 API。 在将网络访问策略设置为 private-only.

您可以通过多种方法来更新网络设置。 但是,在更新网络访问策略之前,需要先初始化服务实例。 请参阅 使用 IBM Cloud TKE CLI 插件初始化服务实例使用智能卡和管理实用程序初始化服务实例 以获取指示信息。

  • 供应服务实例 时,可以使用 UI 或 CLI 在 private-onlypublic-and-private 选项之间进行选择。

  • 在供应和初始化服务实例后 管理和更新网络设置

    在启用仅专用网络后,无法在 UI 中执行进一步的密钥管理操作。 请改为使用 CLI 或 API 在仅专用网络与公用和专用网络之间进行切换。

发出 ibmcloud resource service-instance-delete (NAME | ID) 命令以删除实例后,不会强制实施实例访问策略,该策略控制从公共或专用 IP 地址访问实例。

启用以下网络设置后,使用密钥管理服务 API 的密钥管理操作和使用 GREP11 和 PKCS #11 API 的加密操作都会受到影响。

准备工作

  1. 确保 IBM Cloud 基础架构帐户已启用虚拟路由和转发 (VRF)

    在启用 VRF 时,将针对帐户创建单独的路由表,并且在 IBM Cloud 网络上单独路由与帐户资源之间的连接。 要了解有关 VRF 技术的更多信息,请参阅 IBM Cloud 上的虚拟路由和转发

    启用 VRF 会永久更改帐户的联网。 请确保了解对帐户和资源的影响。 启用 VRF 后,无法禁用。

  2. 确保 IBM Cloud 基础架构帐户已启用服务端点

    启用服务端点时,可以使用仅可通过 IBM Cloud专用网络访问的专用 IP 来连接到 Hyper Protect Crypto Services。 要了解更多信息,请参阅用于专用连接的服务端点

    为帐户启用服务端点后,所有现有和未来的 Hyper Protect Crypto Services 资源和服务实例都可从公共和专用端点使用。

步骤 1: 在虚拟服务器上配置 IBM Cloud 的专用网络

通过为 IBM Cloud的专用网络配置路由表来准备 VSI 或测试机器。

  1. 要将流量路由到 IBM Cloud的专用网络,请在 VSI 上运行以下命令:

    route add -net 166.9.0.0/16 gw <gateway> dev <gateway_interface>
    

    <gateway> (例如,10.x.x.x) 和 <gateway_interface> (例如,eth10) 替换为相应的值。

  2. 可选:通过显示新的路由表来验证路径是否已成功添加。

    route -n
    

步骤 2: 供应服务实例并选择网络访问权

供应服务实例 时,可以使用 UI 或 CLI 在 private-onlypublic-and-private 选项之间进行选择。

在供应和初始化服务实例之后,您始终可以 管理和更新网络设置。 使用 CLI 或 API 在仅专用网络与公用和专用网络之间进行切换。

步骤 3: 将 TKE CLI 插件的 Hyper Protect Crypto Services 专用端点作为目标

要执行密钥管理和加密操作 (认为是专用端点),您需要首先将专用端点作为可信密钥条目 (TKE) CLI 插件的目标。

  1. 从命令行登录到 IBM Cloud。

    ibmcloud login
    

    如果登录失败,请运行 ibmcloud login --sso 命令重试。 使用联合标识登录时需要 --sso 参数。 如果使用此选项,请转至 CLI 输出中列出的链接以生成一次性密码。

  2. 将 TKE_PRIVATE_ADDR 环境变量设置为可信密钥条目 (TKE) 插件的专用端点。 替换 与在其中创建服务实例的 位置的短名称 一起使用。

    export TKE_PRIVATE_ADDR=https://tke.private.us-south.hs-crypto.cloud.ibm.com
    

    TKE_PRIVATE_ADDR 环境变量用于设置公共端点和专用端点的 API 端点 URL。 如果要使用公共端点,请取消设置 TKE_PRIVATE_ADDR 环境变量,或者将 TKE_PRIVATE_ADDR 环境变量设置为公共端点 URL: https://tke.<region>.hs-crypto.cloud.ibm.com

步骤 4: 初始化服务实例

如果在供应服务实例时选择 private-only 选项,那么将在专用网络中执行所有后续操作,包括 初始化服务实例。 您可以使用 密钥部件文件智能卡和管理实用程序 来初始化服务实例。 如果选择 public-and-private 选项,那么可以在公用网络中初始化服务实例。

完成服务初始化后,您仍可以通过遵循“管理网络设置”来更新网络设置。

步骤 5: 将密钥管理服务的 Hyper Protect Crypto Services 专用端点作为目标

如果您正在使用 Hyper Protect Crypto Services的密钥管理服务,那么在配置 VSI 以接受 IBM Cloud的专用网络流量后,可以使用 Key Protect CLI 插件将 Hyper Protect Crypto Services 的专用端点作为目标。

如果您正在使用 GREP11 服务,那么该服务将处理专用端点连接。 根据 生成 GREP11 API 请求 中的指示信息,您只需将 GREP11 服务端点切换到专用端点。

  1. 可选:确保帐户已启用 VRF 和服务端点。

    ibmcloud account show
    

    以下 CLI 输出显示了启用 VRF 和服务端点的帐户的帐户详细信息。

    Retrieving account John Doe's Account of john.doe@email.com...
    OK
    
    Account ID:                   d154dfbd0bc2edefthyufffc9b5ca318
    Currently Targeted Account:   true
    Linked Softlayer Account:     1008967
    Service Endpoint Enabled:     true
    

    请参阅 启用 VRF 和服务端点,以了解如何设置帐户以连接到专用网络。

  2. 设置环境变量以将 Hyper Protect Crypto Services 专用端点设定为目标。

    仅在 Linux 操作系统或 macOS 上使用以下命令。 有关如何在 Windows 操作系统上设置环境变量,请参阅访问 Key Protect CLI

    设置 KP_PRIVATE_ADDR 环境变量以将密钥管理服务的专用端点作为目标:

    export KP_PRIVATE_ADDR=https://<instance_ID>.api.private.<region>.hs-crypto.appdomain.cloud
    

    您可以在服务仪表板中的 概述 > 连接 > 密钥管理专用端点 URL 下找到密钥管理专用端点 URL。

    或者,您可以动态 检索 API 端点 URL。 返回的值包括以下内容:

    {
      "instance_id": "<instance_ID>",
      "kms": {
        "public": "<instance_ID>.api.<region>.hs-crypto.appdomain.cloud",
        "private":"<instance_ID>.api.private.<region>.hs-crypto.appdomain.cloud"
        },
        "ep11": {
        "public": "<instance_ID>.ep11.<region>.hs-crypto.appdomain.cloud",
        "private":"<instance_ID>.ep11.private.<region>.hs-crypto.appdomain.cloud"
      }
    }
    

    专用端点 URL 在 private 中返回。 对于密钥管理端点,请使用 kms 部分中返回的值。 KP_PRIVATE_ADDR 环境变量用于设置公共端点和专用端点的 API 端点 URL。 如果要使用公共端点,请确保将 KP_PRIVATE_ADDR 环境变量设置为 public 部分中 kms 字段中返回的公共端点 URL。

步骤 6: 测试专用网络连接

您可能希望在设置专用网络后测试网络连接。

要测试密钥管理服务的专用网络连接,请使用 Key Protect CLI 对 Hyper Protect Crypto Services 服务实例执行操作。 以下示例显示如何在专用网络上创建 根密钥A symmetric wrapping key that is used for encrypting and decrypting other keys that are stored in a data service.

  1. 通过将专用端点设定为目标来创建根密钥

    ibmcloud kp create <key_name> -i <instance_ID>
    

    <key_name> 替换为便于识别密钥的人类可读别名。 将 <instance_ID> 替换为 用于标识 Hyper Protect Crypto Services 服务实例的 IBM Cloud 实例标识

  2. 可选:通过列出 Hyper Protect Crypto Services 服务实例中可用的密钥,验证密钥是否已成功创建。

    ibmcloud kp list -i <instance_ID>
    

    <instance_ID> 替换为标识 Hyper Protect Crypto Services 服务实例的 IBM Cloud 实例标识。

下一步

要执行密钥管理操作,请参阅:

要执行加密操作,请参阅: