Claves de encriptación administradas por el cliente (CMEK)

De forma predeterminada, Gemini Enterprise Agent Platform Workbench encripta el contenido en reposo del cliente. Agent Platform Workbench controla la encriptación por ti sin que debas realizar ninguna acción adicional. Esta opción se denomina encriptación predeterminada de Google.

Si deseas controlar tus claves de encriptación, puedes usar las claves de encriptación administradas por el cliente (CMEK) en Cloud KMS con servicios integrados en CMEK, incluido Agent Platform Workbench. El uso de claves de Cloud KMS te permite controlar su nivel de protección, ubicación, programa de rotación, permisos de uso y acceso, y límites criptográficos. El uso de Cloud KMS también te permite hacer un seguimiento del uso de las claves, ver los registros de auditoría y controlar los ciclos de vida de las claves. En lugar de que Google posea y administre las claves de encriptación de claves (KEK) simétricas que protegen tus datos, tú las controlas y administras en Cloud KMS.

Después de configurar tus recursos con CMEK, la experiencia de acceso a tus recursos de Agent Platform Workbench es similar a usar la encriptación predeterminada de Google. Para obtener más información sobre tus opciones de encriptación, consulta Claves de encriptación administradas por el cliente (CMEK).

En esta página, se describen algunos beneficios y limitaciones específicos del uso de CMEK con Gemini Enterprise Agent Platform Workbench y se muestra cómo configurar una instancia de Agent Platform Workbench nueva para usar CMEK.

Para obtener más información sobre cómo usar CMEK para Gemini Enterprise Agent Platform, consulta la página CMEK de Agent Platform.

Beneficios de CMEK

En general, las CMEK son más útiles si necesitas control total sobre las claves que se usan para encriptar los datos. Mediante CMEK, puedes administrar las claves dentro de Cloud Key Management Service. Por ejemplo, puedes rotar o inhabilitar una clave, o bien puedes configurar una programación de rotación mediante la API de Cloud KMS.

Cuando ejecutas una instancia de Agent Platform Workbench, esta se ejecuta en una máquina virtual (VM) administrada por Gemini Enterprise Agent Platform Workbench. Cuando habilitas CMEK para una instancia de Agent Platform Workbench, Agent Platform Workbench usa la clave que designes, en lugar de una clave administrada por Google, para encriptar datos en los discos de arranque de la VM.

La clave CMEK no encripta los metadatos, como el nombre y la región de la instancia, asociados con tu instancia de Agent Platform Workbench. Los metadatos asociados con las instancias de Agent Platform Workbench siempre se encriptan mediante el mecanismo de encriptación predeterminado de Google.

Limitaciones de CMEK

Para disminuir la latencia y evitar que los recursos dependan de los servicios distribuidos en varios dominios con fallas, Google recomienda proteger las instancias de Agent Platform Workbench con claves en la misma ubicación.

  • Puedes encriptar instancias regionales de Agent Platform Workbench mediante claves en la misma ubicación o en la ubicación global. Por ejemplo, puedes encriptar datos en un disco en la zona us-west1-a mediante una clave en us-west1 o global.
  • Puedes encriptar instancias globales mediante el uso de claves en cualquier ubicación.
  • La configuración de CMEK para Agent Platform Workbench no configura de forma automática las CMEK para otros Google Cloud productos que uses. Para usar CMEK para encriptar datos en otros Google Cloud productos, debes completar la configuración adicional.

Configura CMEK para la instancia de Agent Platform Workbench

En las siguientes secciones, se describe cómo crear un llavero de claves y una clave en Cloud Key Management Service, cómo otorgar permisos de encriptador y desencriptador de cuenta de servicio para tu clave y cómo crear una instancia de Agent Platform Workbench que use CMEK.

Antes de comenzar

Recomendamos usar una configuración que admita una separación de obligaciones. Si deseas configurar CMEK para Agent Platform Workbench, puedes usar dos proyectos diferentes Google Cloud :

  • Un proyecto de Cloud KMS: un proyecto para administrar tu clave de encriptación
  • Un proyecto de Agent Platform Workbench: Un proyecto para acceder a instancias de Agent Platform Workbench y, además, interactuar con cualquier otro Google Cloud producto que necesites para tu caso de uso

Como alternativa, puedes usar un solo Google Cloud proyecto. Para hacerlo, usa el mismo proyecto para todas las tareas siguientes.

Configura el proyecto de Cloud KMS

  1. Accede a tu Google Cloud cuenta de. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Cloud KMS API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Cloud KMS API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

Configura el proyecto de Agent Platform Workbench

  1. Accede a tu Google Cloud cuenta de. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  6. Verify that billing is enabled for your Google Cloud project.

  7. Enable the Notebooks API.

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    Enable the API

Configura Google Cloud CLI

La gcloud CLI es obligatoria en algunos pasos de esta página y opcional en otros.

Instala la Google Cloud CLI. Después de la instalación, inicializa Google Cloud CLI ejecutando el siguiente comando:

gcloud init

Si usas un proveedor de identidad externo (IdP), primero debes acceder a la gcloud CLI con tu identidad federada.

Crea un llavero de claves y una clave

Cuando crees un llavero de claves y una clave, ten en cuenta los siguientes requisitos:

  • Cuando elijas la ubicación de tu llavero de claves, usa global o la ubicación en la que se encuentra la instancia de Agent Platform Workbench.

  • Asegúrate de crear el llavero de claves y la clave en el proyecto de Cloud KMS.

Para crear un llavero de claves y una clave, consulta Crea claves de encriptación simétricas.

Otorga permisos de Agent Platform Workbench

Para usar CMEK para la instancia de Agent Platform Workbench, debes otorgar permiso a la instancia de Agent Platform Workbench para encriptar y desencriptar datos con la clave. Otorgas este permiso a tu agente de servicio y a la cuenta de servicio de Compute Engine.

Para encontrar las cuentas específicas de tu proyecto de Agent Platform Workbench, usa la Google Cloud consola.

  1. En la Google Cloud consola de, dirígete a la página IAM.

    Ir a IAM

  2. Selecciona Incluir asignaciones de roles proporcionadas por Google.

  3. Busca los miembros que coincidan con los siguientes formatos de dirección de correo electrónico. Toma nota de las direcciones de correo electrónico y úsalas en los siguientes pasos.

    • La dirección de correo electrónico del agente de servicio de tu proyecto se ve de la siguiente manera:

      service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
    • La dirección de correo electrónico de la cuenta de servicio de Compute Engine se ve de la siguiente manera:

      service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com

    Reemplaza NOTEBOOKS_PROJECT_NUMBER por el número de proyecto de tu proyecto de Agent Platform Workbench.

    Para otorgar permiso a estas cuentas para encriptar y desencriptar datos con tu clave, puedes usar la Google Cloud consola o la gcloud CLI.

    Console

    1. En la consola de Google Cloud , ve a la página Administración de claves.

      Ir a Administración de claves

    2. Selecciona tu proyecto de Cloud KMS.

    3. Haz clic en el nombre del llavero de claves que creaste en Crea un llavero de claves y una clave. Se abrirá la página Detalles del llavero de claves.

    4. Selecciona la casilla de verificación de la clave que creaste en Crea un llavero de claves y una clave. Si no hay un panel de información etiquetado con el nombre de la clave que ya esté abierto, haz clic en Mostrar panel de información.

    5. En el panel de información, haz clic en  Agregar miembro. Se abre el cuadro de diálogo Agregar miembros a “KEY_NAME. En este cuadro de diálogo, haz la siguiente acción:

      1. En el campo Miembros nuevos, ingresa la dirección de correo electrónico del agente de servicio de tu proyecto:

        service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
      2. En la lista Seleccionar un rol, haz clic en Cloud KMS y, luego, selecciona la función Encriptador/desencriptador de CryptoKey de Cloud KMS.

      3. Haz clic en Guardar.

    6. Repite estos pasos para el agente de servicio de Compute Engine:

      service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com

    gcloud

    1. Para otorgar permiso al agente de servicio de tu proyecto para encriptar y desencriptar datos con tu clave, ejecuta el siguiente comando:

      gcloud kms keys add-iam-policy-binding KEY_NAME \
        --keyring=KEY_RING_NAME \
        --location=REGION \
        --project=KMS_PROJECT_ID \
        --member=serviceAccount:service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com \
        --role=roles/cloudkms.cryptoKeyEncrypterDecrypter

      Reemplaza lo siguiente:

      • KEY_NAME: Es el nombre de la clave que creaste en Crea un llavero de claves y una clave.
      • KEY_RING_NAME: Es el llavero de claves que creaste en Crea un llavero de claves y una clave.
      • REGION: Es la región en la que creaste el llavero de claves.
      • KMS_PROJECT_ID: Es el ID del proyecto de Cloud KMS.
      • NOTEBOOKS_PROJECT_NUMBER: Es el número del proyecto de Agent Platform Workbench, que anotaste en la sección anterior como parte de una dirección de correo electrónico de la cuenta de servicio.
    2. Para otorgar permiso a la cuenta de servicio de Compute Engine para encriptar y desencriptar datos con tu clave, ejecuta el siguiente comando:

      gcloud kms keys add-iam-policy-binding KEY_NAME \
        --keyring=KEY_RING_NAME \
        --location=REGION \
        --project=KMS_PROJECT_ID \
        --member=serviceAccount:service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com \
        --role=roles/cloudkms.cryptoKeyEncrypterDecrypter

Crea una instancia de Agent Platform Workbench con CMEK

Después de otorgar a tu instancia de Agent Platform Workbench permiso para encriptar y desencriptar datos con tu clave, puedes crear una instancia de Agent Platform Workbench que encripte los datos con esta clave.

En el siguiente ejemplo, se muestra cómo encriptar y desencriptar datos con tu clave mediante la Google Cloud consola de.

Para crear una instancia de Agent Platform Workbench con una clave de encriptación administrada por el cliente, puedes usar la Google Cloud consola o la gcloud CLI:

Console

  1. En la Google Cloud consola de, ve a la página Instancias.

    Ir a Instancias

  2. Haz clic en  Crear nuevo.

  3. En el cuadro de diálogo Instancia nueva, haz clic en Opciones avanzadas.

  4. En el diálogo Crear instancia, en la sección Detalles, proporciona la siguiente información para tu instancia nueva:

    • Nombre: un nombre para tu instancia nueva
    • Región: es la región en la que se encuentran la clave y el llavero de claves.
    • Zona: selecciona una zona dentro de la región que elegiste.
  5. En la sección Discos, en Encriptación, selecciona Clave de encriptación administrada por el cliente (CMEK).

  6. Haz clic en Selecciona una clave administrada por el cliente.

    • Si la clave administrada por el cliente que deseas usar está en la lista, selecciónala.
    • Si la clave administrada por el cliente que deseas usar no está en la lista, ingresa el ID de recurso de tu clave administrada por el cliente. El ID de recurso de tu clave administrada por el cliente será similar al siguiente:

      projects/NOTEBOOKS_PROJECT_NUMBER/locations/REGION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME

      Reemplaza lo siguiente:

      • NOTEBOOKS_PROJECT_NUMBER: Es el ID de tu proyecto de Agent Platform Workbench
      • REGION: Es la región en la que creaste el llavero de claves y en la que planeas crear la instancia de Agent Platform Workbench.
      • KEY_RING_NAME: Es el llavero de claves que creaste en Crea un llavero de claves y una clave.
      • KEY_NAME: Es el nombre de la clave que creaste en Crea un llavero de claves y una clave.
  7. Completa el resto del diálogo de creación de la instancia y, luego, haz clic en Crear.

gcloud

Para usar gcloud CLI a fin de crear una instancia de Agent Platform Workbench con una clave de encriptación administrada por el cliente, ejecuta el siguiente comando. En este ejemplo, se supone que deseas crear una instancia de Agent Platform Workbench con un tipo de máquina n1-standard-1 y un disco de arranque persistente estándar de 100 GB.

gcloud notebooks instances create notebook-vm-cmek \
    --location=REGION \
    --vm-image-family=IMAGE_FAMILY \
    --vm-image-project=cloud-notebooks-managed \
    --machine-type="n1-standard-1" \
    --boot-disk-type="PD_STANDARD" \
    --boot-disk-size=100 \
    --kms-key=KEY_NAME \
    --kms-project=KMS_PROJECT_ID \
    --kms-location=REGION \
    --kms-keyring=KEY_RING_NAME \
    --disk-encryption=CMEK \
    --metadata='proxy-mode=project_editors'

Reemplaza lo siguiente:

  • REGION: Es la región en la que creaste el llavero de claves y en la que planeas crear la instancia de Agent Platform Workbench.
  • IMAGE_FAMILY: Es la familia de imágenes que deseas usar para crear tu instancia de Agent Platform Workbench.
  • KEY_NAME: Es el nombre de la clave que creaste en Crea un llavero de claves y una clave
  • KMS_PROJECT_ID: Es el ID del proyecto de Cloud KMS.
  • KEY_RING_NAME: Es el llavero de claves que creaste en Crea un llavero de claves y una clave.

¿Qué sigue?