L'utilisation de clés de chiffrement fournies par le client (CSEK) pour chiffrer les ressources Compute Engine suivantes est obsolète. Depuis le 20 juillet 2026, vous ne pouvez plus utiliser de clé CSEK pour chiffrer les ressources Compute Engine suivantes :
- Disques persistants
- Images
- Images système
- Instantanés standards et instantanés d'archive
- Instantanés immédiats
Les clés CSEK seront complètement supprimées de Compute Engine le 20 juillet 2027.
Alternatives aux clés CSEK
Utilisez des clés de chiffrement gérées par le client (CMEK) gérées par le Cloud Key Management Service. Cloud KMS offre des contrôles de sécurité améliorés, une auditabilité et une compatibilité avec la rotation pour vos clés, ainsi qu'une compatibilité avec les volumes Hyperdisk.
Ce document explique comment migrer vos ressources Compute Engine chiffrées par CSEK pour utiliser des clés CMEK à la place.
Pour en savoir plus sur l'utilisation des clés CMEK pour les disques, les instantanés, et les images Compute Engine, consultez Protéger des ressources avec des clés Cloud KMS.
Migrer des ressources chiffrées par CSEK pour utiliser des clés de chiffrement gérées par le client (CMEK)
Vous ne pouvez pas supprimer la clé CSEK utilisée pour chiffrer une ressource et la remplacer par une clé CMEK. Vous devez créer une copie de la ressource existante et la chiffrer avec la clé CMEK.
Cette section explique comment migrer les ressources Compute Engine suivantes pour utiliser des clés CMEK au lieu de clés CSEK :
- Volumes de disque persistant
- Images
- Images système
- Instantanés standards et d'archive
- Instantanés immédiats
Préparer la migration des ressources chiffrées par CSEK
Pour pouvoir chiffrer une ressource avec une clé CMEK, vous devez disposer d'au moins un trousseau de clés et d'une clé Cloud KMS. Pour créer un trousseau de clés et une clé, suivez les étapes décrites dans Créer des trousseaux de clés et des clés.
Migrer des volumes de disque persistant chiffrés par CSEK pour utiliser des clés CMEK
Vous ne pouvez pas supprimer la clé CSEK d'un disque. Vous devez plutôt créer un disque chiffré par CMEK à partir d'un instantané du disque chiffré par CSEK.
Facultatif : si le disque chiffré par CSEK existant est le disque de démarrage d'une instance de calcul en cours d'exécution, arrêtez l'instance.
Créez un disque à partir de l'instantané standard et chiffrez-le avec une clé Cloud KMS. Vous pouvez utiliser Google Cloud CLI ou REST.
gcloud CLI
Utilisez la
gcloud compute disks createcommande.Si la clé CSEK de l'instantané est encapsulée en RSA, utilisez la
gcloud beta compute disks create command. .Spécifiez la clé CMEK pour le nouveau disque avec l'option
--kms-key.Pour créer un disque régional, spécifiez les zones de répliques du disque à l'aide de l'
replica-zonesoption : `--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_TYPERemplacez les éléments suivants :
- NEW_CMEK_DISK_NAME : nom du nouveau disque, par exemple
migrated-cmek-disk. - CSEK_SNAPSHOT_NAME : nom de l'instantané créé à partir de
le disque chiffré par CSEK, par exemple
my-csek-snapshot. - PATH_TO_CSEK_KEY_FILE : chemin d'accès au fichier contenant la clé
CSEK utilisée pour chiffrer l'instantané, par exemple
/tmp/csek_key.json. Le format du fichier est décrit dans Format du fichier de clés. - KMS_PROJECT_ID : ID du projet dans lequel se trouve la clé Cloud KMS.
- KEY_REGION : région dans laquelle se trouve la clé.
- KEY_RING : nom du trousseau de clés qui inclut la clé.
- KMS_KEY_NAME : nom de la clé utilisée pour chiffrer le disque.
- LOCATION_FLAG : option permettant de spécifier l'emplacement,
zoneouregion. - ZONE_OR_REGION : zone ou région du nouveau disque,
par exemple
us-central1-aouus-central1. - DISK_TYPE : type du nouveau disque. Par exemple, pour
créer un volume de disque persistant équilibré, spécifiez
pd-balanced. Pour connaître les valeurs valides, consultez Types compatibles pour les volumes Hyperdisk et Variables de type de disque persistant.
REST
Envoyez une
POSTrequête à ladisks.insertméthode.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" } }Remplacez les éléments suivants :
- API_VERSION_TO_USE : version de l'API à utiliser. Si la clé CSEK est une clé encapsulée en RSA, spécifiez
beta. Sinon, spécifiezv1. - PROJECT_ID : ID de votre projet, par exemple
myproject-171. - LOCATION_TYPE : type d'emplacement,
zonespour créer un disque zonal, ouregionspour créer un disque régional. - ZONE_OR_REGION : zone ou région du nouveau disque,
par exemple
us-central1-aouus-central1. - DISK_TYPE : type du nouveau disque. Par exemple, pour
créer un volume de disque persistant équilibré, spécifiez
pd-balanced. Pour connaître les valeurs valides, consultez Types compatibles pour les volumes Hyperdisk et Variables de type de disque persistant. - NEW_CMEK_DISK_NAME : nom du nouveau disque, par exemple
migrated-cmek-disk. - SNAPSHOT_PROJECT_ID : ID du projet de l'instantané.
- CSEK_SNAPSHOT_NAME : nom de l'instantané créé à partir du disque chiffré par
CSEK, par exemple
my-csek-snapshot. - KMS_PROJECT_ID : ID du projet dans lequel se trouve la clé Cloud KMS.
- KEY_REGION : région dans laquelle se trouve la clé.
- KEY_RING : nom du trousseau de clés qui inclut la clé.
- KMS_KEY_NAME : nom de la clé utilisée pour chiffrer le disque.
- CSEK_KEY_TYPE : type de clé de chiffrement fournie par le client,
rawKeypour une clé brute oursaEncryptedKeysi la clé est encapsulée en RSA. - RAW_OR_RSA_KEY : valeur de la clé brute ou chiffrée par RSA.
- NEW_CMEK_DISK_NAME : nom du nouveau disque, par exemple
Utilisez le nouveau disque avec votre instance de calcul :
Si le disque chiffré par CSEK existant est le disque de démarrage d'une instance de calcul en cours d'exécution, arrêtez l'instance.
Pour commencer à utiliser le nouveau disque, dissociez le disque source chiffré par CSEK de l'instance et associez le nouveau disque que vous venez de créer.
Si le disque source est un disque de démarrage :
Si le disque source n'est pas un disque de démarrage :
Vérifiez que le nouveau disque fonctionne comme prévu.
Après avoir testé le nouveau disque, supprimez l'instantané et le disque d'origine chiffré par CSEK.
Vous continuez à être facturé pour le disque et l'instantané tant que vous ne les supprimez pas.
Migrer des instantanés immédiats chiffrés par CSEK
Vous ne pouvez pas supprimer directement la clé CSEK d'un instantané immédiat. Vous devez plutôt convertir l'instantané en instantané immédiat chiffré par CMEK en effectuant les tâches suivantes :
Créez un instantané standard temporaire chiffré par CSEK à partir de l'instantané immédiat.
Créez un disque temporaire chiffré par CMEK à partir de l'instantané chiffré par CSEK.
Créez un instantané immédiat chiffré par CMEK du nouveau disque.
Une fois l'instantané immédiat chiffré par CMEK créé, supprimez l'instantané standard chiffré par CSEK et le disque temporaire.
Migrer des images et des instantanés chiffrés par CSEK
Vous ne pouvez pas supprimer la clé CSEK d'une image, d'un instantané d'archive, d'un instantané immédiat ni d'un instantané standard. Vous devez plutôt créer un disque chiffré par CMEK à partir de l'image ou de l'instantané, puis créer une image ou un instantané du nouveau disque.
Créez un volume Google Cloud Hyperdisk ou de disque persistant à partir de l'image ou de l'instantané :
Créez une image ou un instantané standard du nouveau disque. Chiffrez la nouvelle image ou le nouvel instantané avec une clé CMEK.
Supprimez le disque que vous avez créé précédemment.
Migrer des images système chiffrées par CSEK
Pour créer une image système chiffrée par CMEK à partir d'une image système chiffrée par CSEK, vous devez créer une instance temporaire à partir de l'image système, puis créer une image système chiffrée par CMEK à partir de l'instance temporaire. Procédez comme suit.
Créez une instance à partir de l'image système chiffrée par CSEK, en spécifiant une clé Cloud KMS pour chaque disque de l'image système. Vous devez utiliser REST ou Google Cloud CLI. Pour en savoir plus sur le remplacement des propriétés lors de la création d'une image système, consultez Créer une instance à partir d'une image système avec des valeurs de remplacement de propriété.
Google Cloud CLI
Utilisez la
gcloud compute instances createcommande.gcloud 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
Remplacez les éléments suivants :
- NEW_INSTANCE_NAME : nom de la nouvelle instance, par exemple
migrated-instance. - PROJECT_ID : ID du projet dans lequel vous souhaitez créer l'
instance, par exemple
myproject-123. - ZONE : zone de la nouvelle instance, par exemple
us-central1-a. - INSTANCE_MACHINE_TYPE : type de machine de la nouvelle instance,
par exemple
c3-standard-4. - CSEK_MACHINE_IMAGE_NAME : nom de l'image système source chiffrée par CSEK.
- PATH_TO_CSEK_KEY_FILE : chemin d'accès au fichier contenant la clé CSEK
utilisée pour chiffrer l'image système source, par exemple
/tmp/csek_key.json. Pour connaître le format de fichier requis, consultez Format du fichier de clés. - BOOT_DISK_DEVICE_NAME : nouveau nom d'appareil pour le disque de démarrage tel qu'il est défini dans l'image système.
- KMS_PROJECT_ID : ID du projet dans lequel se trouve votre clé Cloud KMS.
- REGION : région dans laquelle se trouve votre clé Cloud KMS,
par exemple
us-central1. - KEY_RING : nom du trousseau de clés qui inclut les clés.
- BOOT_DISK_KMS_KEY : nom de la clé Cloud KMS utilisée pour chiffrer le disque de démarrage de la nouvelle instance.
- DEVICE_NAME_FOR_DATA_DISK_1 : nouveau nom d'appareil pour le premier disque de données tel qu'il est défini dans l'image système source.
- KMS_KEY_FOR_DATA_DISK_1 : nom de la clé Cloud KMS utilisée pour chiffrer le premier disque de données.
- KMS_KEY_FOR_DATA_DISK_2 : nom de la clé Cloud KMS utilisée pour chiffrer le deuxième disque de données.
REST
Envoyez une requête
POSTà la méthodeinstances.insertPOST 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" } } ] }Remplacez les éléments suivants :
PROJECT_ID: ID du projet dans lequel vous souhaitez créer l'instance temporaire, par exemplemyproject-123.ZONE: zone de la nouvelle instance, par exempleus-central1-a.NEW_INSTANCE_NAME: nom de l'instance temporaire à créer, par exemplemigrated-instance.CSEK_MACHINE_IMAGE_NAME: nom de l'image système source chiffrée par CSEK, par exemplecsek-encrypted-image.BOOT_DISK_DEVICE_NAME: nom d'appareil du disque de démarrage tel qu'il est défini dans l'image système source, par exempleboot-disk-0.KMS_PROJECT_ID: ID du projet dans lequel se trouve votre clé Cloud KMS.REGION: région dans laquelle se trouve votre clé Cloud KMS, par exempleus-central1.KEY_RING: nom du trousseau de clés qui inclut les clés de chiffrement.BOOT_DISK_KMS_KEY: nom de la clé Cloud KMS utilisée pour chiffrer le nouveau disque de démarrage.DEVICE_NAME_FOR_DATA_DISK_1: nom d'appareil du premier disque de données tel qu'il est défini dans l'image système source.KMS_KEY_FOR_DATA_DISK_1: nom de la clé Cloud KMS utilisée pour chiffrer le premier disque de données.DEVICE_NAME_FOR_DATA_DISK_2: nom d'appareil du deuxième disque de données tel qu'il est défini dans l'image système source.KMS_KEY_FOR_DATA_DISK_2: nom de la clé Cloud KMS utilisée pour chiffrer le deuxième disque de données.
- NEW_INSTANCE_NAME : nom de la nouvelle instance, par exemple
Vérifiez que l'instance fonctionne comme prévu.
Après avoir testé l'instance, créez une image système chiffrée par CMEK à partir de la nouvelle instance.
Supprimer les ressources inutilisées
Pour éviter d'être facturé pour les ressources inutilisées, supprimez les disques, les images système, les instantanés, les instances et les images dont vous n'avez plus besoin.
Étape suivante
- Découvrez les bonnes pratiques pour utiliser les clés CMEK.
- Gérez les clés CMEK utilisées pour vos disques et instantanés Compute Engine :