De forma predeterminada, Compute Engine encripta el contenido en reposo del cliente. Compute Engine controla la encriptación por ti sin que debas realizar ninguna acción adicional. Esta opción se denomina Encriptación predeterminada de Google.
Sin embargo, puedes personalizar la encriptación que Compute Engine utiliza para tus recursos si proporcionas claves de encriptación de claves (KEK). 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 claves de encriptación administradas por el cliente (CMEK) en Cloud KMS con Compute Engine. 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.
Puedes crear CMEK de forma manual o usar la clave automática de Cloud KMS para que se creen automáticamente en tu nombre.
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 sobre cada tipo de encriptación, consulta Claves de encriptación administradas por el cliente y Claves de encriptación proporcionadas por el cliente.
Para agregar una capa adicional de seguridad a tus discos Hyperdisk Balanced, habilita el modo confidencial. El modo confidencial agrega encriptación basada en hardware a tus discos Hyperdisk Balanced.
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 de 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.
CMEK con Autokey de Cloud KMS
Si decides usar claves de Cloud KMS para proteger tus recursos de Compute Engine, puedes crear CMEK de forma manual o usar la clave automática de Cloud KMS para crear las claves. Con Autokey, los llaveros de claves y las claves se generan a pedido como parte de la creación de recursos en Compute Engine. Los agentes de servicio que usan las claves para las operaciones de encriptación y desencriptación se crean si aún no existen y se les otorgan los roles de Identity and Access Management (IAM) necesarios. Para obtener más información, consulta Descripción general de las claves automáticas.
Para obtener información sobre cómo usar las CMEK que crea la clave automática de Cloud KMS para proteger tus recursos de Compute Engine, consulta Cómo usar la clave automática con recursos de Compute Engine.
Instantáneas
Cuando usas Autokey para crear claves que protejan tus recursos de Compute Engine, Autokey no crea claves nuevas para las instantáneas. Debes encriptar una instantánea con la misma clave que usaste para encriptar el disco de origen. Si creas una instantánea con la consola de Google Cloud, la clave de encriptación que usa el disco se aplica automáticamente a la instantánea. Si creas una instantánea con la gcloud CLI, Terraform o la API de Compute Engine, debes obtener el identificador de recursos de la clave que se usa para encriptar el disco y, luego, usar esa clave para encriptar la instantánea.
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) creadas manualmente 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.
Console
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.
Modo confidencial para Hyperdisk Balanced
Si usas Computación confidencial, puedes extender la encriptación basada en hardware a tus volúmenes de Hyperdisk Balanced habilitando el modo confidencial.
El modo confidencial de tus volúmenes de Hyperdisk Balanced te permite habilitar seguridad adicional sin tener que refactorizar la aplicación. El modo confidencial es una propiedad que puedes especificar cuando creas un nuevo volumen de Hyperdisk Balanced.
Los volúmenes de Hyperdisk Balanced en modo confidencial solo se pueden usar con Confidential VMs.
Para crear un volumen de Hyperdisk Balanced en modo confidencial, consulta Habilita el modo confidencial para los volúmenes de Hyperdisk Balanced.
Tipos de máquinas compatibles para volúmenes de Hyperdisk Balanced en modo confidencial
Los volúmenes de Hyperdisk Balanced en modo confidencial solo se pueden usar con Confidential VMs que usen el tipo de máquina N2D.
Regiones admitidas para volúmenes de Hyperdisk Balanced en modo confidencial
El modo confidencial para los volúmenes de Hyperdisk Balanced está disponible en las siguientes regiones:
europe-west4
us-central1
us-east4
us-east5
us-south1
us-west4
Limitaciones para los volúmenes de Hyperdisk Balanced en modo confidencial
- Hyperdisk Extreme, Hyperdisk Throughput, Hyperdisk ML y Alta disponibilidad balanceada de Hyperdisk no admiten el modo confidencial.
- No puedes suspender ni reanudar una VM que use volúmenes de Hyperdisk Balanced en el modo confidencial.
- No puedes usar grupos de almacenamiento de Hyperdisk con volúmenes Hyperdisk Balanced en modo confidencial.
- No puedes crear una imagen de máquina ni una imagen personalizada a partir de un volumen de Hyperdisk Balanced en el modo Confidencial.
¿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).
- Para crear un volumen de Hyperdisk Balanced en modo confidencial, consulta Habilita el modo confidencial para los volúmenes de Hyperdisk Balanced.
- Obtén más información sobre el formato y la especificación de CSEKs.