Crea recursos protegidos con Autokey de Cloud KMS

En esta página, se muestra cómo crear recursos protegidos usando claves creadas por Autokey de Cloud KMS para la encriptación Para obtener más información Autokey, consulta Descripción general de Autokey.

Antes de comenzar

A fin de obtener los permisos que necesitas para usar Autokey a fin de crear recursos protegidos, haz lo siguiente: solicita a tu administrador que te otorgue el Rol de IAM de usuario de Autokey de Cloud KMS (roles/cloudkms.autokeyUser) en la carpeta o el proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.

También necesitas permisos para crear recursos en la carpeta de Autokey o en un proyecto de recursos dentro de la carpeta. Para obtener más información sobre los permisos necesario para crear cada recurso, consulta la documentación específica del servicio. Tú Puedes encontrar esta documentación si ubicas el servicio en la página de integraciones de CMEK y visita el vínculo del tipo de recurso que quieras crear.

Usa Autokey con recursos de Compute Engine

Autokey crea una clave nueva para cada disco, imagen e imagen de máquina en en la misma ubicación que el recurso que se crea.

Autokey no crea claves nuevas para las instantáneas. Las instantáneas deben usar misma clave que se usó para encriptar el disco. Si creas una instantánea con el la consola de Google Cloud, la clave de encriptación que usa el disco se aplicado a la instantánea. Si creas una instantánea con gcloud CLI, Terraform en la API de Cloud KMS, debes identificar la clave que usaste para encriptar el disco y usar esa clave para encriptar la instantánea.

Para obtener más información sobre el uso de CMEK con instantáneas, consulta Crea una instantánea. de un disco encriptado con CMEK.

Crea un recurso protegido de Compute Engine

Console

Para crear un disco, completa los siguientes pasos:

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

    Ir a Discos

  2. Haz clic en Crear disco y, luego, ingresa las propiedades del disco nuevo.

  3. En Encriptación, selecciona Clave de Cloud KMS.

  4. En Tipo de clave, selecciona Cloud KMS con Autokey y, luego, haz clic en Solicita una clave nueva. Un mensaje indica si la llave se ha se creó correctamente y está lista para usarse.

  5. Para terminar de crear el disco, haz clic en Crear.

Puede seguir un proceso similar para crear instancias de VM protegidas, y recursos de imágenes de máquinas.

Terraform

En la siguiente muestra de Terraform, se crea un controlador de clave y se usa la clave que se muestra para proteger un nuevo recurso de disco persistente:

resource "google_kms_key_handle" "my_key_handle" {
  provider               = google-beta
  project                = "RESOURCE_PROJECT_ID"
  name                   = "KEY_HANDLE"
  location               = "LOCATION"
  resource_type_selector = "compute.googleapis.com/Disk"
}

resource "google_compute_disk" "persistent_disk" {
  project = "RESOURCE_PROJECT_ID"
  name    = "DISK_NAME"
  type    = "pd-ssd"
  zone    = "ZONE"
  size    = 30
  physical_block_size_bytes = 4096
  disk_encryption_key {
    kms_key_self_link = google_kms_key_handle.my_key_handle.kms_key
  }
}

Reemplaza lo siguiente:

  • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. dentro de la carpeta de Autokey en la que quieres crear un recurso.
  • KEY_HANDLE: Es un ID que se usará para el controlador de clave.
  • LOCATION: Es la ubicación en la que deseas crear la ruta protegida. recurso.
  • DISK_NAME: Es el nombre del disco nuevo.
  • ZONE: Es la zona del recurso protegido. Debe debe ser una zona dentro de la ubicación en la que está creando el recurso. Para Por ejemplo, si creas el recurso en la ubicación us-central1, la zona podría ser us-central1-a.

API

  1. Para solicitar una nueva clave de Cloud KMS, crea un KeyHandle

    curl -H "Content-Type: application/json" \
        -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \
        -d '{"resource_type_selector": "RESOURCE_TYPE"}'
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • RESOURCE_TYPE: Es el tipo de recurso que deseas. crear, por ejemplo, compute.googleapis.com/Disk.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata"
      }
    }
    

    Toma nota del OPERATION_ID del resultado. Necesitas este valor. para obtener el ID de recurso de la clave creada.

  2. Busca la clave de Cloud KMS asociada con el controlador de clave:

    curl -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • OPERATION_ID: Es el identificador de la solicitud del controlador de clave. a partir del resultado del paso anterior.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle",
        "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE",
        "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME",
        "resourceTypeSelector": "RESOURCE_TYPE"
      }
    }
    

    El valor del elemento kmsKey del resultado es el ID de recurso completo de la clave que creó Autokey para este recurso. Puedes usar esta de recurso del mismo modo que lo usarías para cualquier otra recurso de Cloud KMS.

  3. Crea un disco encriptado a través de la gcloud compute disks create comando, con el Marca de --kms-key:

    gcloud compute disks create DISK_NAME \
      --kms-key projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME
    

    Reemplaza lo siguiente:

    • DISK_NAME: Es el nombre del disco nuevo.
    • KEY_PROJECT_ID: Es el ID del proyecto clave.
    • LOCATION: Es la ubicación en la que deseas crear la recurso.
    • KEY_NAME: Es el nombre de la clave que se muestra en el resultado de del paso anterior.

Usa Autokey con recursos de Cloud Storage

Autokey crea una clave nueva en la misma ubicación que el bucket. La clave que crea Autokey se asigna como la clave predeterminada del bucket.

Autokey no crea claves para objetos. De forma predeterminada, los objetos creados en de un bucket usan la clave predeterminada del bucket. Si quieres encriptar un objeto con una distinta de la predeterminada del bucket, puedes crear una CMEK de forma manual y usar esa clave cuando se crea el objeto.

Si quieres cambiar la clave predeterminada que se asignó a un bucket, puedes usar cualquiera las CMEK existentes, incluidas las claves que crea Autokey.

Crea un recurso protegido de Cloud Storage

Console

  1. En la consola de Google Cloud, ve a la página Crear un bucket.

    Ir a Crear un bucket

  2. Sigue las instrucciones para crear un bucket nuevo. hasta que llegues a Elige cómo proteger los datos de los objetos.

  3. En Elige cómo proteger los datos de los objetos, expande el menú Datos encriptación y, luego, selecciona Clave de Cloud KMS.

  4. En Tipo de clave, selecciona Cloud KMS con Autokey y, luego, haz clic en Solicita una clave nueva. Un mensaje indica si la llave se ha se creó correctamente y está lista para usarse.

  5. Para terminar de crear el bucket, haz clic en Crear.

Terraform

En la siguiente muestra de Terraform, se crea un controlador de clave y se usa la clave que se muestra para proteger un nuevo bucket de almacenamiento:

resource "google_kms_key_handle" "my_key_handle" {
  provider               = google-beta
  project                = "RESOURCE_PROJECT_ID"
  name                   = "KEY_HANDLE"
  location               = "LOCATION"
  resource_type_selector = "storage.googleapis.com/Bucket"
}

resource "google_storage_bucket" "simple_bucket_name" {
  name                        = "BUCKET_NAME"
  location                    = "LOCATION"
  force_destroy               = true
  project                     = "RESOURCE_PROJECT_ID"
  uniform_bucket_level_access = true
  encryption {
    default_kms_key_name      = google_kms_key_handle.my_key_handle.kms_key
  }
}

Reemplaza lo siguiente:

  • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. dentro de la carpeta de Autokey en la que quieres crear un recurso.
  • KEY_HANDLE: Es un ID que se usará para el controlador de clave.
  • LOCATION: Es la ubicación en la que deseas crear la ruta protegida. recurso.
  • BUCKET_NAME: Es el nombre del bucket nuevo.

API

  1. Para solicitar una nueva clave de Cloud KMS, crea un KeyHandle

    curl -H "Content-Type: application/json" \
        -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \
        -d '{"resource_type_selector": "RESOURCE_TYPE"}'
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • RESOURCE_TYPE: Es el tipo de recurso que deseas. crear, por ejemplo, storage.googleapis.com/Bucket.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata"
      }
    }
    

    Toma nota del OPERATION_ID del resultado. Lo necesitas value para obtener el ID de recurso de la clave creada.

  2. Busca la clave de Cloud KMS asociada con el controlador de clave:

    curl -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • OPERATION_ID: Es el identificador de la solicitud del controlador de clave. a partir del resultado del paso anterior.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle",
        "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE",
        "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME",
        "resourceTypeSelector": "RESOURCE_TYPE"
      }
    }
    

    El valor del elemento kmsKey en el resultado es el ID del recurso completo. de la clave que creó Autokey para este recurso. Puedes usar este ID de recurso de la misma manera que lo usarías para cualquier otro recurso de Cloud KMS.

  3. Crea un bucket encriptado con el método gcloud storage buckets create comando, con el Marca de --default-encryption-key:

    gcloud storage buckets create gs://BUCKET_NAME \
        --location=LOCATION \
        --default-encryption-key=projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME
    

    Reemplaza lo siguiente:

    • BUCKET_NAME: Es el nombre del bucket nuevo. El el nombre del bucket debe seguir la requisitos para nombrar buckets.
    • LOCATION: Es la ubicación en la que deseas crear la bucket.
    • KEY_PROJECT_ID: Es el ID del proyecto clave.
    • LOCATION: Es la ubicación en la que deseas crear la recurso.
    • KEY_NAME: Es el nombre de la clave que se muestra en el resultado de del paso anterior.

Usa Autokey con recursos de BigQuery

Cloud KMS está disponible en varias ediciones de BigQuery. Marca asegurarse de que la edición de BigQuery que usas es compatible con Cloud KMS antes de que intentes usar Autokey para proteger a los recursos de BigQuery. Para obtener más información sobre BigQuery consulta Información sobre las ediciones de BigQuery.

Para cada conjunto de datos nuevo, Autokey crea una clave nueva en la misma ubicación como el recurso en sí, que se convierte en la clave predeterminada del conjunto de datos.

Autokey no crea claves para tablas, consultas, tablas temporales o e implementar modelos automáticamente. De forma predeterminada, estos recursos están protegidos por la clave predeterminada del conjunto de datos. Si deseas proteger un recurso en un conjunto de datos con una clave distinta del conjunto de datos predeterminada, puedes crear una CMEK de forma manual y usarla cuando crees la recurso.

Para consultas y tablas temporales que no están dentro de un conjunto de datos, usa las variables claves predeterminadas. Usa una clave predeterminada de proyecto diferente para cada ubicación en el que contiene recursos de BigQuery. Para obtener más información con claves predeterminadas del proyecto, consulta Establece una clave predeterminada del proyecto.

Para obtener más información sobre el uso de CMEK con BigQuery, consulta Claves de Cloud KMS administradas por el cliente.

Crea un recurso protegido de BigQuery

Console

Antes de intentar crear un conjunto de datos de BigQuery Autokey, asegúrate de tener los permisos necesarios. Para ver más Para obtener más información sobre la creación de conjuntos de datos, consulta Crea conjuntos de datos.

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

    Ir a BigQuery

  2. Sigue las instrucciones para Crear un conjunto de datos llegarás a Opciones avanzadas > Encriptación.

  3. En Encriptación, selecciona Clave de Cloud KMS.

  4. En Tipo de clave, selecciona Cloud KMS con Autokey y, luego, haz clic en Solicita una clave nueva. Un mensaje indica si la llave se ha se creó correctamente y está lista para usarse.

  5. Para terminar de crear el conjunto de datos, haz clic en Crear conjunto de datos.

Terraform

En la siguiente muestra de Terraform, se crea un controlador de clave y se usa la clave mostrada para proteger un nuevo conjunto de datos:

resource "google_kms_key_handle" "my_key_handle" {
  provider               = google-beta
  project                = "RESOURCE_PROJECT_ID"
  name                   = "test-key-handle"
  location               = "LOCATION"
  resource_type_selector = "bigquery.googleapis.com/Dataset"
}

resource "google_bigquery_dataset" "dataset" {
  project                     = "RESOURCE_PROJECT_ID"
  dataset_id                  = "DATASET_ID"
  friendly_name               = "DATASET_NAME"
  description                 = "DATASET_DESCRIPTION"
  location                    = "LOCATION"
  default_table_expiration_ms = 3600000

  default_encryption_configuration {
    kms_key_name = google_kms_key_handle.my_key_handle.kms_key
  }
}

Reemplaza lo siguiente:

  • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. dentro de la carpeta de Autokey en la que quieres crear un recurso.
  • LOCATION: Es la ubicación en la que deseas crear la ruta protegida. recurso.
  • DATASET_ID: Es el ID que se usará para el conjunto de datos nuevo.
  • DATASET_NAME: Es un nombre sencillo para el nuevo elemento. de tu conjunto de datos.
  • DATASET_DESCRIPTION: Una descripción para la nueva de tu conjunto de datos.

API

  1. Para solicitar una nueva clave de Cloud KMS, crea un KeyHandle

    curl -H "Content-Type: application/json" \
        -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \
        -d '{"resource_type_selector": "RESOURCE_TYPE"}'
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • RESOURCE_TYPE: Es el tipo de recurso que deseas. crear, por ejemplo, bigquery.googleapis.com/Dataset.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata"
      }
    }
    

    Toma nota del OPERATION_ID del resultado. Lo necesitas value para obtener el ID de recurso de la clave creada.

  2. Busca la clave de Cloud KMS asociada con el controlador de clave:

    curl -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • OPERATION_ID: Es el identificador de la solicitud del controlador de clave. a partir del resultado del paso anterior.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle",
        "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE",
        "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME",
        "resourceTypeSelector": "RESOURCE_TYPE"
      }
    }
    

    El valor del elemento kmsKey en el resultado es el ID del recurso completo. de la clave que creó Autokey para este recurso. Puedes usar este ID de recurso de la misma manera que lo usarías para cualquier otro recurso de Cloud KMS.

  3. Crea un conjunto de datos encriptado a través de bq mk comando, con el --destination_kms_key.

    bq --location=LOCATION mk \
        --dataset \
        --default_kms_key=projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME \
        --default_table_expiration=TABLE_EXPIRATION \
        --description="DATASET_DESCRIPTION" \
        RESOURCE_PROJECT_ID:DATASET_ID
    

    Reemplaza lo siguiente:

    • LOCATION: Es la ubicación en la que deseas crear la de tu conjunto de datos.
    • KEY_PROJECT_ID: Es el ID del proyecto clave.
    • KEY_NAME: Es el nombre de la clave que se muestra en el resultado de del paso anterior.
    • TABLE_EXPIRATION: la duración predeterminada de los nuevos tablas en este conjunto de datos, en segundos.
    • DATASET_DESCRIPTION: Una descripción para la nueva de tu conjunto de datos.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear es un recurso protegido.
    • DATASET_ID: el ID del conjunto de datos que deseas creando.

    Para obtener más información sobre la herramienta bq, consulta Explora bq herramienta de línea de comandos.

Usa Autokey con recursos de Secret Manager

Autokey crea una clave única para proteger todos los secretos del mismo proyecto y la ubicación. Cuando se rote la clave, los nuevos Secrets que se agreguen al proyecto usarán el nuevo a la versión principal de la clave.

Secret Manager solo es compatible con Autokey de Cloud KMS cuando creando recursos con Terraform o la API de REST.

Crea un recurso protegido de Secret Manager

Terraform

En la siguiente muestra de Terraform, se crea un controlador de clave y se usa la clave que se muestra para proteger un secreto nuevo con replicación automática:

resource "google_kms_key_handle" "my_key_handle" {
  provider               = google-beta
  project                = "RESOURCE_PROJECT_ID"
  name                   = "test-key-handle"
  location               = "global"
  resource_type_selector = "secretmanager.googleapis.com/Secret"
}

resource "google_secret_manager_secret" "my_secret" {
  project   = "RESOURCE_PROJECT_ID"
  secret_id = "SECRET_ID"

  replication {
    auto {
      customer_managed_encryption {
        kms_key_name = google_kms_key_handle.my_key_handle.kms_key
      }
    }
  }
}

Reemplaza lo siguiente:

  • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. dentro de la carpeta de Autokey en la que quieres crear un recurso.
  • SECRET_ID: Es el ID que se usará para el secreto nuevo.

Si intentas crear un controlador de clave para un secreto en el mismo proyecto y para la que ya existe un controlador de clave, un mensaje de error mostrará el del controlador de clave existente. Si esto sucede, asegúrate de que solo tendrá un bloque que crea el controlador de clave. Puedes volver a usar el controlador de claves su ID (KEY_HANDLE) para crear Secrets adicionales que deberían compartir la llave.

API

  1. Para solicitar una nueva clave de Cloud KMS, crea un KeyHandle

    curl -H "Content-Type: application/json" \
        -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X POST https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles \
        -d '{"resource_type_selector": "RESOURCE_TYPE"}'
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • RESOURCE_TYPE: Es el tipo de recurso que deseas. crear, por ejemplo, secretmanager.googleapis.com/Secret.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.CreateKeyHandleMetadata"
      }
    }
    

    Toma nota del OPERATION_ID del resultado. Lo necesitas value para obtener el ID de recurso de la clave creada.

    Si intentas crear un controlador de clave para un secreto en el mismo proyecto y la ubicación para la que ya existe un controlador de clave, aparecerá un mensaje de error muestra los detalles del controlador de clave existente. En este caso, omitir el siguiente paso y usa el ID de recurso de la clave en el campo existingKmsKey para proteger tu nuevo secreto.

  2. Busca la clave de Cloud KMS asociada con el controlador de clave:

    curl -H "X-Goog-User-Project: USER_PROJECT" \
        -H "Authorization: Bearer TOKEN" \
        -X GET https://cloudkms.googleapis.com/v1/projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID
    

    Reemplaza lo siguiente:

    • USER_PROJECT: Es el proyecto al que se facturarán los cargos. asociados con esta solicitud.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.
    • LOCATION: Es la ubicación en la que deseas crear la recurso protegido.
    • OPERATION_ID: Es el identificador de la solicitud del controlador de clave. a partir del resultado del paso anterior.

    El resultado es similar a este:

    {
      "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.kms.v1.KeyHandle",
        "name": "projects/RESOURCE_PROJECT_ID/locations/LOCATION/keyHandles/KEY_HANDLE",
        "kmsKey": "projects/KEY_PROJECT_ID/locations/LOCATION/keyRings/autokey/cryptoKeys/KEY_NAME",
        "resourceTypeSelector": "RESOURCE_TYPE"
      }
    }
    

    El valor del elemento kmsKey en el resultado es el ID del recurso completo. de la clave que creó Autokey para este recurso. Puedes usar este ID de recurso de la misma manera que lo usarías para cualquier otro recurso de Cloud KMS.

  3. Crea un secreto encriptado con replicación automática mediante el Comando gcloud secrets create, con la marca --kms-key-name.

    gcloud secrets create "SECRET_ID" \
        --replication-policy "automatic" \
        --kms-key-name "projects/KEY_PROJECT_ID/locations/global/keyRings/autokey/cryptoKeys/KEY_NAME" \
        --project "RESOURCE_PROJECT_ID"
    

    Reemplaza lo siguiente:

    • SECRET_ID: Es el ID que se usará para el secreto nuevo.
    • KEY_PROJECT_ID: Es el ID del proyecto clave.
    • KEY_NAME: Es el nombre de la clave que se muestra en el resultado de del paso anterior.
    • RESOURCE_PROJECT_ID: Es el ID del proyecto del recurso. proyecto dentro de la carpeta de Autokey en la que deseas crear que es un recurso protegido.

¿Qué sigue?