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.
Sin embargo, si tienes requisitos específicos relacionados con el cumplimiento o con la localidad, de material criptográfico, puedes personalizar la encriptación de Compute Engine usa en tus recursos. Puedes personalizar la encriptación proporcionando 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 es necesario especificar la clave cuando trabaje con el disco.
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.
Los volúmenes de Persistent Disk admiten la encriptación predeterminada con Google, CMEK y CSEK.
El hiperdisco de Google Cloud admite las CMEKs y la encriptación predeterminada de Google. No puedes usar las CSEKs para encriptar hiperdiscos.
Los discos SSD locales solo son compatibles con la encriptación predeterminada de Google. No puedes usar CSEK ni CMEK para encriptar discos SSD locales.
Las clonaciones de discos y las imágenes de máquina admiten la encriptación predeterminada de Google, CMEK y CSEK.
Las instantáneas estándar y las instantáneas inmediatas admiten la encriptación predeterminada de Google, CMEK y CSEK.
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
En la consola de Google Cloud, ve a la página Discos.
En la columna Nombre, haz clic en el nombre del disco.
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
-
In the Google Cloud console, activate Cloud Shell.
At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.
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 objetodiskEncryptionKey
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 propiedadkmsKeyName
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 propiedadsha256
es el hash SHA-256 de la clave de encriptación proporcionada por el cliente que protege el disco.{ "diskEncryptionKey": { "sha256": "abcdefghijk134560459345dssfd" } }
- Si la propiedad
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 propiedadkmsKeyName
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 propiedadsha256
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?
- Para obtener información sobre cómo automatizar la creación de CMEK, consulta Cloud KMS con clave automática (vista previa).
- Para aprender a crear CMEKs, consulta Crea claves de encriptación con Cloud KMS.
- Encripta un disco con claves de encriptación administradas por el cliente (CMEKs).
- Obtén más información sobre el formato y la especificación de CSEKs.