Información de la encriptación de discos


De forma predeterminada, Compute Engine encripta el contenido en reposo del cliente. Compute Engine controla y administra esta encriptación sin que debas realizar ninguna acción adicional. Esta opción se conoce como encriptación administrada por Google.

Puedes personalizar la encriptación que Compute Engine utiliza para tus recursos si proporcionas claves de encriptación de claves. Las claves de encriptación de claves no encriptan tus datos de forma directa, sino que encriptan las claves generadas por Google que Compute Engine usa para encriptar tus datos.

Tienes dos opciones para proporcionar claves de encriptación de claves:

  • Recomendada. Usa Cloud Key Management Service (Cloud KMS) en Compute Engine para crear y administrar claves de encriptación de claves.

    Las claves administradas por Cloud Key Management Service se conocen como claves de encriptación administradas por el cliente (CMEKs). Después de crear una clave, puedes usarla como clave de encriptación de claves de un disco.

    Puedes crear CMEKs de forma directa o usar la clave automática de Cloud KMS para crearlas automáticamente. Para obtener más información, consulta Cloud KMS con Autokey.

    En la mayoría de los casos, después de crear un disco encriptado con CMEK, no necesitas especificar la clave cuando trabajas con el disco, ya que Cloud Key Management Service sabe qué clave usaste. La excepción es crear un disco a partir de una instantánea inmediata encriptada con CMEK.

  • Puedes administrar tus propias claves de encriptación de claves fuera de Compute Engine y proporcionar la clave cada vez que crees o administres un disco. Esta opción se conoce como claves de encriptación proporcionadas por el cliente (CSEKs). Cuando administras recursos encriptados con CSEK, siempre debes especificar la clave que usaste cuando encriptaste el recurso.

Para obtener más información, consulta Claves de encriptación administradas por el cliente y Claves de encriptación proporcionadas por el cliente.

Tipos de discos compatibles

En esta sección, se enumeran los tipos de encriptación compatibles para los discos y otras opciones de almacenamiento que ofrece Compute Engine.

Encripta datos con claves de encriptación administradas por el cliente

Si deseas obtener más información sobre cómo usar las claves de encriptación administradas por el cliente (CMEK) para encriptar discos y otros recursos de Compute Engine, consulta Protege recursos mediante el uso de claves de Cloud KMS.

Encripta discos con claves de encriptación proporcionadas por el cliente

Para aprender a usar las claves de encriptación proporcionadas por el cliente (CSEK) para encriptar discos y otros recursos de Compute Engine, consulta Encripta discos con claves de encriptación proporcionadas por el cliente.

Visualiza información sobre la encriptación de un disco

Los discos en Compute Engine se encriptan con claves de encriptación administradas por Google, administradas por el cliente o proporcionadas por él. La encriptación administrada por Google es la predeterminada.

Para ver el tipo de encriptación de un disco, puedes usar gcloud CLI, la consola de Google Cloud o la API de Compute Engine.

Consola

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

    Ir a Discos

  2. En la columna Nombre, haz clic en el nombre del disco.

  3. En la tabla Propiedades, la fila etiquetada Encriptación indica el tipo de encriptación: Administrada por Google, administrada por el cliente o suministrada por el cliente.

gcloud

  1. En la consola de Google Cloud, activa Cloud Shell.

    Activar Cloud Shell

    En la parte inferior de la consola de Google Cloud, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.

  2. Usa el comando gcloud compute disks describe:

        gcloud compute disks describe DISK_NAME \
          --zone=ZONE \
          --format="json(diskEncryptionKey)"
      

    Reemplaza lo siguiente:

    • PROJECT_ID: Es el ID de tu proyecto.
    • ZONE: Es la zona en la que se encuentra el disco.
    • DISK_NAME: el nombre del disco.

      Resultado del comando

      Si el resultado es null, el disco usa la encriptación administrada por Google, que es la predeterminada.

      De lo contrario, el resultado es un objeto JSON.

      Si el objeto JSON contiene un campo llamado diskEncryptionKey, el disco está encriptado. El objeto diskEncryptionKey contiene información sobre si el disco está encriptado con CMEK o CSEK:

      • Si la propiedad diskEncryptionKey.kmsKeyName está presente, el disco está encriptado con CMEK. La propiedad kmsKeyName indica el nombre de la clave específica que se usó para encriptar el disco:
        {
          "diskEncryptionKey": {
            "kmsKeyName": "projects/my-proj/.."
          }
        }
        
      • Si la propiedad diskEncryptionKey.sha256 está presente, el disco está encriptado con CSEK. La propiedad sha256 es el hash SHA-256 de la clave de encriptación proporcionada por el cliente que protege el disco.
          {
            "diskEncryptionKey": {
              "sha256": "abcdefghijk134560459345dssfd"
            }
          }
            

API

Realiza una solicitud POST al método compute.disks.get.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME

Reemplaza lo siguiente:

  • PROJECT_ID: Es el ID de tu proyecto.
  • ZONE: Es la zona en la que se encuentra el disco.
  • DISK_NAME: Es el nombre del disco

Solicitar respuesta

Si la respuesta es null, el disco usa la encriptación administrada por Google, que es la configuración predeterminada.

De lo contrario, la respuesta es un objeto JSON.

Si el objeto JSON contiene un campo llamado diskEncryptionKey, el disco está encriptado. El objeto diskEncryptionKey contiene información sobre si el disco está encriptado con CMEK o CSEK:

  • Si la propiedad diskEncryptionKey.kmsKeyName está presente, el disco está encriptado con CMEK. La propiedad kmsKeyName indica el nombre de la clave específica que se usó para encriptar el disco:
    {
      "diskEncryptionKey": {
        "kmsKeyName": "projects/my-proj/.."
      }
    }
    
  • Si la propiedad diskEncryptionKey.sha256 está presente, el disco está encriptado con CSEK. La propiedad sha256 es el hash SHA-256 de la clave de encriptación proporcionada por el cliente que protege el disco.
      {
        "diskEncryptionKey": {
          "sha256": "abcdefghijk134560459345dssfd"
        }
      }
        

Si el disco usa la encriptación CMEK, puedes encontrar información detallada sobre la clave, su llavero de claves y su ubicación si sigues los pasos en Visualiza claves por proyecto.

Si el disco usa la encriptación CSEK, comunícate con el administrador de la organización para obtener detalles sobre la clave. Si usas CMEK, también puedes ver qué recursos protege esa clave con el seguimiento de uso de las claves. Para obtener más información, consulta Visualiza el uso de claves.

¿Qué sigue?