客户管理的加密密钥

默认情况下,Gemini Notebook Enterprise 会对静态客户内容进行加密。Gemini Notebook Enterprise 会为您处理加密,无需您执行任何 其他操作。此选项称为“Google 默认加密”。

如果您想要控制加密密钥,则可以将 Cloud KMS 中客户管理的加密密钥 (CMEK) 与集成 CMEK 的服务(包括 Gemini Notebook Enterprise)搭配使用。使用 Cloud KMS 密钥时,您可以控制其保护 级别、位置、轮替时间表、使用和访问权限以及加密边界。 使用 Cloud KMS 还可让您跟踪密钥使用情况、查看审核日志以及控制密钥生命周期。 这样您就可以在 Cloud KMS 中控制和管理用于保护数据的对称 密钥加密密钥 (KEK),而不是由 Google 拥有和管理这些密钥。

使用 CMEK 设置资源后,访问您的 Gemini Notebook Enterprise 资源的体验与使用 Google 默认加密类似。 如需详细了解加密 选项,请参阅客户管理的加密密钥 (CMEK)。

注册 CMEK 密钥后,Gemini Notebook Enterprise 会定期调用 Cloud KMS,以维护数据的逻辑隔离实例。即使 CMEK 配置未设置为默认配置,并且没有应用或数据连接器使用该配置,也会发生这种情况。使用情况来自设置和运行实例,而不是来自数据量或访问实例的用户数。 请参阅 Cloud Key Management Service 定价。

如需完全关闭所有 Cloud KMS 使用情况,您必须 取消注册 Cloud KMS 密钥、停用密钥或 撤消其权限。停用 Gemini Notebook Enterprise API 不会删除 CmekConfig 或数据,并且您仍需为 CMEK 使用情况付费。

Gemini Notebook Enterprise 中 Cloud KMS 的限制

以下限制适用于 Gemini Notebook Enterprise 中的 CMEK (Cloud KMS) 密钥:

  • 已应用于实例的密钥无法更改,但可以轮替密钥版本。

  • 创建笔记本后,您无法更改笔记本的加密设置。未受保护的笔记本以后无法受到保护,并且无法移除保护。

  • 您必须使用美国或欧盟多区域实例(而非全球实例)。 如需详细了解多区域和数据驻留,包括使用非全球位置的相关限制 ,请参阅 位置。
  • 如果您需要为项目注册多个密钥,请与您的 Google 客户支持团队联系,请求增加 CMEK 配置的配额,并说明您需要多个密钥的原因。

    以下限制适用于将 EKM 或 HSM 与 CMEK 搭配使用的情况:

    • 您的 EKM 和 HSM 加密和解密调用配额应至少有 1,000 QPM 的余量。如需了解如何查看配额,请参阅查看 Cloud KMS 配额。

    • 如果使用 EKM,密钥必须在任何超过 30 秒的时间段内有 90% 以上的时间可访问。如果密钥在此时间段内无法访问,则可能会对编入索引和搜索新鲜度产生负面影响。

    • 如果出现结算问题、持久性配额不足问题或持久性无法访问问题超过 12 小时,服务会自动关闭与 EKM 或 HSM 密钥相关的 CmekConfig。

准备工作

请确保满足以下前提条件:

  • 创建多区域对称 Cloud KMS 密钥。请参阅 Cloud KMS 文档中的 创建密钥环和 创建密钥。

    • 将轮替周期设置为永不(手动轮替) 。

    • 在位置字段中,选择多区域,然后从下拉菜单中选择欧洲或美国。

  • 已向 Discovery Engine 服务代理授予密钥的 CryptoKey Encrypter/Decrypter IAM 角色 (roles/cloudkms.cryptoKeyEncrypterDecrypter)。 服务代理账号的邮箱采用以下格式:service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com。 如需查看如何向服务代理添加角色的一般说明,请参阅授予或撤销单个角色。

  • 已向 Cloud Storage 服务代理授予密钥的 CryptoKey Encrypter/Decrypter IAM 角色 (roles/cloudkms.cryptoKeyEncrypterDecrypter)。如果未授予此角色,则受 CMEK 保护的实例的数据导入会失败,因为 Discovery Engine 无法创建导入所需的受 CMEK 保护的临时存储桶和目录。

  • 在完成本页上的密钥注册说明之前,请勿设置任何您希望由密钥管理的实例。

注册 Cloud KMS 密钥

如需使用 CMEK 加密数据,您必须注册多区域密钥。(可选)如果您的数据需要单区域密钥(例如,在使用第三方连接器时),您还需要注册单区域密钥。

准备工作

为此,您需要确保实现以下各项安排:

  • 相应区域尚未受到密钥保护。如果已通过 REST 命令为相应区域注册密钥,则以下过程会失败。 如需确定 Gemini Notebook Enterprise 中是否有某个 位置的有效密钥,请参阅查看 Cloud KMS 密钥。

过程

REST

如需为 Gemini Notebook Enterprise 注册您自己的密钥,请按照以下步骤操作:

  1. 使用您要注册的密钥调用 UpdateCmekConfig 方法。

    curl -X PATCH \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"kmsKey":"projects/KMS_PROJECT_ID/locations/KMS_LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME"}' \
    "https://LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/cmekConfigs/CMEK_CONFIG_ID?set_default=SET_DEFAULT"
    

    替换以下内容:

    • KMS_PROJECT_ID:包含密钥的项目的 ID。项目编号无效。
    • KMS_LOCATION:密钥的多区域:us 或 europe。
    • KEY_RING:包含密钥的密钥环的名称。
    • KEY_NAME:密钥的名称。
    • PROJECT_ID:包含实例的项目的 ID。
    • LOCATION:实例的多区域:us 或 eu。
    • CMEK_CONFIG_ID:为 CmekConfig 资源设置唯一 ID,例如 default_cmek_config。
    • SET_DEFAULT:设置为 true,以便将密钥用作在多区域中创建的后续实例的默认密钥。

  2. 等待最多 24 小时,以便注册的密钥可在 Gemini Notebook Enterprise 中使用。注册的密钥在准备就绪之前无法保护笔记本。如果您在此 24 小时内打开界面,可能会遇到错误,或者新笔记本可能不受密钥保护。24 小时后, 按照 验证 Gemini Notebook Enterprise 是否受密钥保护中的步骤确认密钥是否处于活动状态。

  3. 设置实例。如需相关说明,请参阅设置 Gemini Notebook Enterprise。

控制台

过程

如需为 Gemini Notebook Enterprise 注册您自己的密钥,请按照以下步骤操作:

  1. 在 Google Cloud 控制台中,前往 Gemini Enterprise 页面。

    Gemini Enterprise

  2. 点击设置,然后选择 CMEK 标签页。

  3. 点击 us 或 eu 位置对应的添加密钥。

    点击某个位置对应的“添加密钥”。
    点击“添加密钥”。
    1. 点击选择 Cloud KMS 密钥 下拉菜单,然后选择密钥。

      • 如果密钥位于其他项目中,请依次点击切换项目、 您的项目名称,然后输入您创建的密钥的名称并选择该密钥。

      • 如果您知道密钥的资源名称,请点击手动输入, 粘贴密钥资源名称,然后点击保存。

    2. 依次点击确定 > 保存 。

  4. 在设置实例之前,请验证密钥是否已准备就绪。注册的密钥在准备就绪之前无法保护笔记本。注册的密钥最长可能需要 24 小时才能在 Gemini Notebook Enterprise 中使用。 请参阅验证 Gemini Notebook Enterprise 是否受密钥保护。

  5. 设置实例。如需相关说明,请参阅设置 Gemini Notebook Enterprise。

此操作会注册密钥,并创建一个名为 default_cmek_config 的 CmekResource。

注入的数据可能需要过几个小时才会显示在搜索结果中。

取消注册 Cloud KMS 密钥

如需从 Gemini Notebook Enterprise 中取消注册密钥,请按照以下步骤操作:

  1. 使用您要取消注册的 CmekConfig 资源名称调用 DeleteCmekConfig 方法。

    curl -X DELETE \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    "https://LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/cmekConfigs/CMEK_CONFIG_ID"
    

    替换以下内容:

    • LOCATION:实例的多区域:us 或 eu。
    • PROJECT_ID:包含实例的项目的 ID。
    • CMEK_CONFIG_ID:CmekConfig 资源的 ID。如果您使用控制台注册密钥,则 ID 为 default_cmek_config。

    curl 调用和响应示例类似于以下内容:

    $ curl -X DELETE
    -H "Authorization: Bearer $(gcloud auth print-access-token)"
    "https://us-discoveryengine.googleapis.com/v1/projects/my-ai-app-project-123/locations/us/cmekConfigs/default_cmek_config"
     
    {
     "name": "projects/my-ai-app-project-123/locations/us/operations/delete-cmek-config-56789",
     "metadata": {
      "@type": "type.googleapis.com/google.cloud.discoveryengine.v1.DeleteCmekConfigMetadata"
     }
    }
    

  2. 可选:记录该方法返回的 name 值,然后按照 获取有关长时间运行的操作的详细信息 中的说明查看操作何时完成。

    删除 CmekConfig 是一项长时间运行的操作,可能需要几天时间才能完成。这是因为在移除 CmekConfig 之前,系统会完全取消预配底层加密资源。

验证 Gemini Notebook Enterprise 是否受密钥保护

由于注册的密钥最长可能需要 24 小时才能在 Gemini Notebook Enterprise 中使用,因此在密钥准备就绪之前打开应用的用户可能会遇到错误,或者新笔记本可能不受密钥保护。

如果您想确认密钥是否已准备就绪,以及 Gemini Notebook Enterprise 是否受密钥保护,请按照以下步骤操作:

  1. 调用 ListCmekConfigs 方法:

      curl -X GET \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      "https://LOCATION-discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/cmekConfigs"
    

    替换以下内容:

    • LOCATION:实例的多区域:us 或 eu。
    • PROJECT_ID:包含数据的 Google Cloud 项目 的 ID。
  2. 查看命令的输出。

    如果预配过程仍在进行中,则输出包含 "notebooklmState": NOTEBOOK_LM_NOT_READY。

    如果输出中包含以下所有内容,则 CmekConfig 已准备就绪:

    • "state": "ACTIVE"
    • "isDefault": true
    • "notebooklmState": NOTEBOOK_LM_READY

轮替 Cloud KMS 密钥

您无法更改保护现有实例的密钥,但可以将该密钥轮替到新的密钥版本。当您将注册密钥的新版本设为主版本时,Gemini Notebook Enterprise 会检测到更改,并使用新密钥版本自动重新加密数据。您无需调用 Gemini Notebook Enterprise 方法即可开始轮替。

如需了解有关轮替密钥的一般信息,请参阅 Cloud KMS 指南中的密钥 轮替。

如需轮替密钥,请按照以下步骤操作:

  1. 创建新密钥版本,并将其设为主版本。如需相关说明, 请参阅 Cloud KMS 指南中的轮替密钥。

    保持之前的密钥版本处于启用状态。Gemini Notebook Enterprise 检测到新的主版本后,重新加密会自动开始。

  2. 确认 Gemini Notebook Enterprise 检测到新密钥版本。如需查看 CmekConfig,请参阅 验证 Gemini Notebook Enterprise 是否受密钥保护。 检查输出中的以下字段:

    • kmsKeyVersion 显示新密钥版本。
    • state 为 ACTIVE。
    • lastRotationTimestampMicros 显示轮替开始的时间。
  3. 在 kmsKeyVersion 显示新密钥版本后,至少保持之前的密钥版本处于启用状态 30 天。

  4. 停用之前的密钥版本,并确保一切都像以前一样正常运行。请参阅 启用和停用密钥版本 在 Cloud KMS 指南中。

  5. 确定停用之前的密钥版本不会导致任何问题后,将其销毁。请参阅 Cloud KMS 指南中的销毁和恢复密钥 版本。

如果 Cloud KMS 密钥已停用或已撤销

如果密钥已停用或密钥的权限已 撤销,则实例会在 15 分钟内停止注入数据和传送数据。您可以在 30 天内重新启用密钥以恢复操作,以免 CMEK 配置过期且任何关联的数据被永久删除。 不过,重新启用密钥或恢复权限需要很长时间。实例可能需要长达 24 小时才能恢复传送数据。

因此,除非必要,否则请勿停用密钥。在实例上停用和启用密钥是一项耗时的操作。例如,如果反复在停用和启用之间切换密钥,实例将需要很长时间才会达到受保护状态。停用密钥,之后立即重新启用密钥可能会导致停机数天,因为系统会先从实例停用密钥,然后再重新启用密钥。