O uso de chaves de criptografia fornecidas pelo cliente (CSEK) para criptografar os seguintes recursos do Compute Engine foi descontinuado. A partir de 20 de julho de 2026, não será mais possível usar uma CSEK para criptografar nenhum dos seguintes recursos do Compute Engine:
- Discos permanentes
- Imagens
- Imagens de máquina
- Snapshots padrão e de arquivo
- Instant Snapshots
A CSEK será completamente removida do Compute Engine em 20 de julho de 2027.
Alternativas à CSEK
Use chaves de criptografia gerenciadas pelo cliente (CMEK) gerenciadas pelo Cloud Key Management Service. O Cloud KMS oferece controles de segurança aprimorados, capacidade de auditoria e suporte à rotação de chaves, além de suporte a volumes do Hyperdisk.
Este documento descreve como migrar os recursos do Compute Engine criptografados por CSEK para usar CMEKs.
Para mais informações sobre como usar CMEKs para discos, snapshots, e imagens do Compute Engine, consulte Proteger recursos com chaves do Cloud KMS.
Migrar recursos criptografados por CSEK para usar chaves de criptografia gerenciadas pelo cliente (CMEK)
Não é possível remover a CSEK usada para criptografar um recurso e substituí-la por uma CMEK. É necessário criar uma cópia do recurso atual e criptografá-la com a CMEK.
Esta seção descreve como migrar os seguintes recursos do Compute Engine para usar CMEKs em vez de CSEK:
- Volumes Persistent Disk
- Imagens
- Imagens de máquina
- Snapshots padrão e de arquivo
- Instant Snapshots
Preparar a migração de recursos criptografados por CSEK
Antes de criptografar um recurso com uma CMEK, é necessário ter pelo menos um keyring e uma chave do Cloud KMS. Para criar um keyring e uma chave, siga as etapas em Como criar keyrings e chaves.
Migrar volumes Persistent Disk criptografados por CSEK para usar CMEKs
Não é possível remover a CSEK de um disco. Em vez disso, é necessário criar um novo disco criptografado por CMEK com base em um snapshot do disco criptografado por CSEK.
Opcional: se o disco criptografado por CSEK for o disco de inicialização de uma instância de computação em execução, interrompa a instância.
Crie um novo disco com base no snapshot padrão e criptografe-o com uma chave do Cloud KMS. É possível usar a Google Cloud CLI ou a REST.
CLI gcloud
Use o
gcloud compute disks createcomando.Se a CSEK do snapshot for incorporada por RSA, use o
gcloud beta compute disks create command. como alternativa.Especifique a CMEK para o novo disco com a flag
--kms-key.Para criar um disco regional, especifique as zonas de réplica do disco usando a
replica-zonesflag: `--replica-zones=^:^ZONE:REPLICA_ZONE.gcloud compute disks create NEW_CMEK_DISK_NAME \ --source-snapshot=CSEK_SNAPSHOT_NAME \ --csek-key-file=PATH_TO_CSEK_KEY_FILE \ --kms-key=projects/KMS_PROJECT_ID/locations/KEY_REGION/keyRings/KEY_RING/cryptoKeysKMS_KEY_NAME \ --no-require-csek-key-create \ --LOCATION_FLAG=ZONE_OR_REGION \ --type=DISK_TYPESubstitua:
- NEW_CMEK_DISK_NAME: o nome do novo disco, por exemplo,
migrated-cmek-disk. - CSEK_SNAPSHOT_NAME: o nome do snapshot criado com base no disco criptografado por CSEK, por exemplo,
my-csek-snapshot. - PATH_TO_CSEK_KEY_FILE: o caminho para o arquivo que contém a
CSEK usada para criptografar o snapshot, por exemplo,
/tmp/csek_key.json. O formato do arquivo é descrito em Formato do arquivo de chaves. - KMS_PROJECT_ID: o ID do projeto em que a chave do Cloud KMS está localizada.
- KEY_REGION: a região em que a chave está localizada.
- KEY_RING: o nome do keyring que inclui a chave.
- KMS_KEY_NAME: o nome da chave usada para criptografar o disco
- LOCATION_FLAG: a flag para especificar o local,
zoneouregion. - ZONE_OR_REGION: a zona ou região do novo disco,
por exemplo,
us-central1-aouus-central1. - DISK_TYPE: o tipo do novo disco. Por exemplo, para
criar um novo volume de disco permanente equilibrado, especifique
pd-balanced. Para valores válidos, consulte Tipos compatíveis para volumes do Hyperdisk e Variáveis de tipo de disco permanente.
REST
Faça uma
POSTsolicitação para odisks.insertmétodo.POST https://compute.googleapis.com/compute/API_VERSION_TO_USE/projects/PROJECT_ID/LOCATION_TYPE/ZONE_OR_REGION/disks { "name": "NEW_CMEK_DISK_NAME", "type": "https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/LOCATION_TYPE/ZONE_OR_REGION/diskTypes/DISK_TYPE", "sourceSnapshot": "projects/SNAPSHOT_PROJECT_ID/global/snapshots/CSEK_SNAPSHOT_NAME", "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/KEY_REGION/keyRings/KEY_RING/cryptoKeys/KMS_KEY_NAME" }, "sourceSnapshotEncryptionKey": { "CSEK_KEY_TYPE": "RAW_OR_RSA_KEY" } }Substitua:
- API_VERSION_TO_USE: a versão da API a ser usada. Se a chave CSEK for uma chave incorporada por RSA, especifique
beta. Caso contrário, especifiquev1. - PROJECT_ID: o ID do seu projeto, por exemplo,
myproject-171. - LOCATION_TYPE: o tipo de local,
zonespara criar um disco zonal, ouregionspara criar um disco regional. - ZONE_OR_REGION: a zona ou região do novo disco,
por exemplo,
us-central1-aouus-central1. - DISK_TYPE: o tipo do novo disco. Por exemplo, para
criar um novo volume de disco permanente equilibrado, especifique
pd-balanced. Para valores válidos, consulte Tipos compatíveis para volumes do Hyperdisk e Variáveis de tipo de disco permanente. - NEW_CMEK_DISK_NAME: o nome do novo disco, por exemplo,
migrated-cmek-disk. - SNAPSHOT_PROJECT_ID: o ID do projeto do snapshot.
- CSEK_SNAPSHOT_NAME: o nome do snapshot criado com base no disco criptografado por CSEK, por exemplo,
my-csek-snapshot. - KMS_PROJECT_ID: o ID do projeto em que a chave do Cloud KMS está localizada.
- KEY_REGION: a região em que a chave está localizada.
- KEY_RING: o nome do keyring que inclui a chave.
- KMS_KEY_NAME: o nome da chave usada para criptografar o disco
- CSEK_KEY_TYPE: o tipo da chave de criptografia fornecida pelo cliente,
rawKeypara uma chave bruta oursaEncryptedKeyse a chave for incorporada por RSA. - RAW_OR_RSA_KEY: o valor da chave bruta ou criptografada por RSA.
- NEW_CMEK_DISK_NAME: o nome do novo disco, por exemplo,
Use o novo disco com a instância de computação:
Se o disco criptografado por CSEK for o disco de inicialização de uma instância de computação em execução, interrompa a instância.
Para começar a usar o novo disco, desanexe o disco de origem criptografado por CSEK da instância e anexe o novo disco que você acabou de criar.
Se o disco de origem for um disco de inicialização:
Se o disco de origem não for um disco de inicialização:
Verifique se o novo disco funciona conforme o esperado.
Depois de testar o novo disco, exclua o snapshot e o disco original criptografado por CSEK.
Você continua a receber cobranças pelo disco e pelo snapshot até excluí-los.
Migrar Instant Snapshots criptografados por CSEK
Não é possível remover diretamente a CSEK de um Instant Snapshot. Em vez disso, é necessário converter o snapshot em um Instant Snapshot criptografado por CMEK concluindo as seguintes tarefas:
Crie um snapshot padrão temporário criptografado por CSEK com base no Instant Snapshot.
Crie um disco temporário criptografado por CMEK com base no snapshot criptografado por CSEK.
Crie um Instant Snapshot criptografado por CMEK do novo disco.
Depois de criar o Instant Snapshot criptografado por CMEK, exclua o snapshot padrão criptografado por CSEK e o disco temporário.
Migrar imagens e snapshots criptografados por CSEK
Não é possível remover a CSEK de uma imagem, um snapshot de arquivamento, um Instant Snapshot ou um snapshot padrão. Em vez disso, é necessário criar um novo disco criptografado por CMEK com base na imagem ou no snapshot e, em seguida, criar uma imagem ou um snapshot do novo disco.
Crie um novo volume do Google Cloud Hyperdisk ou do Persistent Disk com base na imagem ou no snapshot:
Crie uma imagem ou um snapshot padrão do novo disco. Criptografe a nova imagem ou snapshot com uma CMEK.
Exclua o disco que você criou anteriormente.
Migrar imagens de máquina criptografadas por CSEK
Para criar uma imagem de máquina criptografada por CMEK com base em uma imagem de máquina criptografada por CSEK, é necessário criar uma instância temporária com base na imagem de máquina e, em seguida, criar uma imagem de máquina criptografada por CMEK com base na instância temporária. Siga estas etapas.
Crie uma nova instância com base na imagem de máquina criptografada por CSEK, especificando uma chave do Cloud KMS para cada disco na imagem da máquina. É necessário usar a API REST ou a Google Cloud CLI. Para mais informações sobre como substituir propriedades ao criar uma imagem de máquina, consulte Criar uma instância com base em uma imagem de máquina com modificações de propriedades.
Google Cloud CLI
Use o comando
gcloud compute instances creategcloud compute instances create NEW_INSTANCE_NAME \ --project=PROJECT_ID \ --zone=ZONE \ --machine-type=INSTANCE_MACHINE_TYPE \ --source-machine-image=CSEK_MACHINE_IMAGE_NAME \ --source-machine-image-csek-key-file=PATH_TO_CSEK_KEY_FILE \ --create-disk=device-name=BOOT_DISK_DEVICE_NAME,boot=yes,auto-delete=yes,kms-key=projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/BOOT_DISK_KMS_KEY \ --create-disk=device-name=DEVICE_NAME_FOR_DATA_DISK_1,boot=no,kms-key=projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KMS_KEY_FOR_DATA_DISK_1 \ --create-disk=device-name=DEVICE_NAME_FOR_DATA_DISK_2,boot=no,kms-key=projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KMS_KEY_FOR_DATA_DISK_2
Substitua:
- NEW_INSTANCE_NAME: o nome
da nova instância, por exemplo,
migrated-instance. - PROJECT_ID: o ID do projeto em que você quer criar a
instância, por exemplo,
myproject-123. - ZONE: a zona da nova instância, por exemplo,
us-central1-a. - INSTANCE_MACHINE_TYPE: o tipo de máquina da nova instância,
por exemplo,
c3-standard-4. - CSEK_MACHINE_IMAGE_NAME: o nome da imagem de máquina de origem criptografada por CSEK.
- PATH_TO_CSEK_KEY_FILE: o caminho para o arquivo que contém a CSEK
usada para criptografar a imagem de máquina de origem, por exemplo,
/tmp/csek_key.json. Para o formato de arquivo necessário, consulte Formato do arquivo de chaves. - BOOT_DISK_DEVICE_NAME: o novo nome do dispositivo para o disco de inicialização, conforme definido na imagem de máquina.
- KMS_PROJECT_ID: o ID do projeto em que a chave do Cloud KMS está localizada.
- REGION: a região em que a chave do Cloud KMS está localizada,
por exemplo,
us-central1. - KEY_RING: o nome do keyring que inclui as chaves.
- BOOT_DISK_KMS_KEY: o nome da chave do Cloud KMS usada para criptografar o disco de inicialização da nova instância.
- DEVICE_NAME_FOR_DATA_DISK_1: um novo nome de dispositivo para o primeiro disco de dados , conforme definido na imagem de máquina de origem.
- KMS_KEY_FOR_DATA_DISK_1: o nome da chave do Cloud KMS usada para criptografar o primeiro disco de dados.
- KMS_KEY_FOR_DATA_DISK_2: o nome da chave do Cloud KMS usada para criptografar o segundo disco de dados.
REST
Faça uma
POSTsolicitação para oinstances.insertmétodoPOST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "NEW_INSTANCE_NAME", "sourceMachineImage": "projects/PROJECT_ID/global/machineImages/CSEK_MACHINE_IMAGE_NAME", "disks": [ { "deviceName": "BOOT_DISK_DEVICE_NAME", "boot": true, "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/BOOT_DISK_KMS_KEY" } }, { "deviceName": "DEVICE_NAME_FOR_DATA_DISK_1", "boot": false, "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KMS_KEY_FOR_DATA_DISK_1" } }, { "deviceName": "DEVICE_NAME_FOR_DATA_DISK_2", "boot": false, "diskEncryptionKey": { "kmsKeyName": "projects/KMS_PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys//KMS_KEY_FOR_DATA_DISK_2" } } ] }Substitua:
PROJECT_ID: o ID do projeto em que você quer criar a instância temporária, por exemplo,myproject-123.ZONE: a zona da nova instância, por exemplo,us-central1-a.NEW_INSTANCE_NAME: o nome da instância temporária a ser criada, por exemplo,migrated-instance.CSEK_MACHINE_IMAGE_NAME: o nome da imagem de máquina de origem criptografada por CSEK, por exemplo,csek-encrypted-image.BOOT_DISK_DEVICE_NAME: o nome do dispositivo do disco de inicialização, conforme definido na imagem de máquina de origem, por exemplo,boot-disk-0.KMS_PROJECT_ID: o ID do projeto em que a chave do Cloud KMS está localizada.REGION: a região em que a chave do Cloud KMS está localizada, por exemplo,us-central1.KEY_RING: o nome do keyring que inclui as chaves de criptografia.BOOT_DISK_KMS_KEY: o nome da chave do Cloud KMS usada para criptografar o novo disco de inicialização.DEVICE_NAME_FOR_DATA_DISK_1: o nome do dispositivo do primeiro disco de dados, conforme definido na imagem de máquina de origem.KMS_KEY_FOR_DATA_DISK_1: o nome da chave do Cloud KMS usada para criptografar o primeiro disco de dados.DEVICE_NAME_FOR_DATA_DISK_2: o nome do dispositivo do segundo disco de dados, conforme definido na imagem de máquina de origem.KMS_KEY_FOR_DATA_DISK_2: o nome da chave do Cloud KMS usada para criptografar o segundo disco de dados.
- NEW_INSTANCE_NAME: o nome
da nova instância, por exemplo,
Verifique se a instância funciona conforme o esperado.
Depois de testar a instância, crie uma imagem de máquina criptografada por CMEK com base na nova instância.
Remover recursos não utilizados
Para evitar custos com recursos não utilizados, exclua todos os discos, imagens de máquina, snapshots, instâncias e imagens que não são mais necessários.
A seguir
- Conheça as práticas recomendadas para trabalhar com CMEKs.
- Gerenciar as CMEKs usadas para os discos e snapshots do Compute Engine: