À propos du chiffrement des disques


Par défaut, Compute Engine chiffre les contenus client au repos. Compute Engine traite et gère ce chiffrement sans intervention supplémentaire de votre part. Cette option est appelée "chiffrement géré par Google".

Toutefois, si vous avez des exigences spécifiques liées à la conformité ou à l'emplacement du contenu cryptographique, vous pouvez personnaliser le chiffrement que Compute Engine utilise pour vos ressources.

Vous pouvez personnaliser le chiffrement en fournissant des clés de chiffrement de clé. Les clés de chiffrement de clés ne chiffrent pas directement les données. Au lieu de cela, elles utilisent les clés générées par Google pour chiffrer vos données.

Vous disposez de deux options pour fournir des clés de chiffrement de clés :

  • Recommandé. Utilisez Cloud Key Management Service (Cloud KMS) dans Compute Engine pour créer et gérer des clés de chiffrement de clés.

    Les clés gérées par Cloud Key Management Service sont appelées clés de chiffrement gérées par le client (CMEK pour "customer-managed encryption keys"). Après avoir créé une clé, vous pouvez l'utiliser comme clé de chiffrement de clé pour un disque.

    Dans la plupart des cas, après avoir créé un disque chiffré par CMEK, vous n'avez pas besoin de spécifier la clé lorsque vous travaillez avec le disque, car Cloud Key Management Service sait quelle clé vous avez utilisée. La seule exception à cette règle est la création d'un disque à partir d'un instantané immédiat chiffré par CMEK.

  • Vous pouvez gérer vos propres clés de chiffrement de clés en dehors de Compute Engine et les fournir chaque fois que vous créez ou gérez un disque. Cette option est appelée clés de chiffrement fournies par le client (CSEK pour "customer-supplied encryption keys"). Lorsque vous gérez des ressources chiffrées par CSEK, vous devez toujours spécifier la clé que vous avez utilisée lors du chiffrement de la ressource.

Pour en savoir plus, consultez les pages Clés de chiffrement gérées par le client et Clés de chiffrement fournies par le client.

Types de disques compatibles

Cette section répertorie les types de chiffrement compatibles avec les disques et autres options de stockage proposées par Compute Engine.

  • Les volumes de disque persistant sont compatibles avec le chiffrement par défaut de Google, les clés CMEK et les clés CSEK.

  • Google Cloud Hyperdisk est compatible avec les clés CMEK et le chiffrement par défaut de Google. Vous ne pouvez pas utiliser de clés CSEK pour chiffrer des hyperdisques.

  • Les disques SSD locaux ne sont compatibles qu'avec le chiffrement par défaut de Google. Vous ne pouvez pas utiliser des CSEK ou des CMEK pour chiffrer les disques SSD locaux.

  • Les clones de disque et les images système sont compatibles avec le chiffrement par défaut de Google, les clés CMEK et les clés CSEK.

  • Les instantanés standards et les instantanés immédiats sont compatibles avec le chiffrement par défaut de Google, les CMEK et les CSEK.

Chiffrer des disques avec des clés de chiffrement gérées par le client

Pour en savoir plus sur le chiffrement de disques et d'autres ressources Compute Engine à l'aide de clés de chiffrement gérées par le client (CMEK), consultez la page Protéger des ressources avec des clés Cloud KMS.

Chiffrer des disques avec des clés fournies par le client

Pour savoir comment utiliser des clés de chiffrement fournies par le client (CSEK) afin de chiffrer des disques et d'autres ressources Compute Engine, consultez la page Chiffrer des disques avec des clés fournies par le client.

Afficher les informations relatives au chiffrement d'un disque

Les disques Compute Engine sont chiffrés avec des clés de chiffrement gérées par Google, gérées par le client ou fournies par le client. Le chiffrement géré par Google est la valeur par défaut.

Pour afficher le type de chiffrement d'un disque, vous pouvez utiliser gcloud CLI, la console Google Cloud ou l'API Compute Engine.

Console

  1. Dans la console Google Cloud, accédez à la page Disques.

    Accéder à la page Disques

  2. Dans la colonne Nom, cliquez sur le nom du disque.

  3. Dans la table Propriétés, la ligne libellée Chiffrement indique le type de chiffrement : Géré par Google ,géré par le client ou fourni par le client.

gcloud

  1. Dans la console Google Cloud, activez Cloud Shell.

    Activer Cloud Shell

    En bas de la fenêtre de la console Google Cloud, une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.

  2. Exécutez la commande gcloud compute disks describe :

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

    Remplacez les éléments suivants :

    • PROJECT_ID : ID de votre projet.
    • ZONE : la zone où se trouve le disque.
    • DISK_NAME: Nom du disque.

      Résultat de la commande

      Si le résultat est null, le disque utilise le chiffrement géré par Google, soit la valeur par défaut.

      Sinon, le résultat est un objet JSON.

      Si l'objet JSON contient un champ nommé diskEncryptionKey, le disque est chiffré. L'objet diskEncryptionKey contient des informations indiquant si le disque est chiffré avec une clé CMEK ou CSEK :

      • Si la propriété diskEncryptionKey.kmsKeyName est présente, le disque est chiffré avec une CMEK. La propriété kmsKeyName indique le nom de la clé spécifique utilisée pour chiffrer le disque :
        {
          "diskEncryptionKey": {
            "kmsKeyName": "projects/my-proj/.."
          }
        }
        
      • Si la propriété diskEncryptionKey.sha256 est présente, le disque est chiffré par CSEK. La propriété sha256 correspond au hachage SHA-256 de la clé de chiffrement fournie par le client qui protège le disque.
          {
            "diskEncryptionKey": {
              "sha256": "abcdefghijk134560459345dssfd"
            }
          }
            

API

Envoyez une requête POST à la méthode compute.disks.get.

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

Remplacez les éléments suivants :

  • PROJECT_ID : ID de votre projet.
  • ZONE : la zone où se trouve le disque.
  • DISK_NAME : le nom du disque

Réponse de requête

Si la réponse est null, le disque utilise le chiffrement géré par Google, soit la valeur par défaut.

Sinon, la réponse est un objet JSON.

Si l'objet JSON contient un champ nommé diskEncryptionKey, le disque est chiffré. L'objet diskEncryptionKey contient des informations indiquant si le disque est chiffré avec une clé CMEK ou CSEK :

  • Si la propriété diskEncryptionKey.kmsKeyName est présente, le disque est chiffré avec une CMEK. La propriété kmsKeyName indique le nom de la clé spécifique utilisée pour chiffrer le disque :
    {
      "diskEncryptionKey": {
        "kmsKeyName": "projects/my-proj/.."
      }
    }
    
  • Si la propriété diskEncryptionKey.sha256 est présente, le disque est chiffré par CSEK. La propriété sha256 correspond au hachage SHA-256 de la clé de chiffrement fournie par le client qui protège le disque.
      {
        "diskEncryptionKey": {
          "sha256": "abcdefghijk134560459345dssfd"
        }
      }
        

Si le disque utilise le chiffrement CMEK, vous pouvez trouver des informations détaillées sur la clé, son trousseau et son emplacement en suivant les étapes décrites dans la section Afficher les clés par projet.

Si le disque utilise le chiffrement CSEK, contactez l'administrateur de votre organisation pour plus de détails sur la clé.

Étapes suivantes