Clés de chiffrement gérées par le client

Par défaut, Google Cloud chiffre automatiquement les données au repos à l'aide de clés de chiffrement gérées par Google. Si vous avez des exigences réglementaires ou de conformité spécifiques concernant les clés qui protègent vos données, vous pouvez utiliser des clés de chiffrement gérées par le client (CMEK) pour vos instances Vertex AI Workbench.

Cette page décrit certains avantages et limites spécifiques de l'utilisation du chiffrement CMEK avec Vertex AI Workbench, et explique comment configurer une nouvelle instance Vertex AI Workbench pour utiliser le chiffrement CMEK.

Pour en savoir plus sur le chiffrement CMEK en général, y compris quand et pourquoi l'activer, consultez la page Clés de chiffrement gérées par le client.

Avantages du chiffrement CMEK

D'une manière générale, CMEK est particulièrement utile si vous avez besoin d'un contrôle total sur les clés utilisées pour chiffrer vos données. Avec CMEK, vous pouvez gérer vos clés dans Cloud Key Management Service. Par exemple, vous pouvez désactiver des clés, les alterner ou définir un calendrier de rotation à l'aide de l'API Cloud KMS.

Lorsque vous exécutez une instance Vertex AI Workbench, votre instance s'exécute sur une machine virtuelle (VM) gérée par Vertex AI Workbench. Lorsque vous activez CMEK pour une instance Vertex AI Workbench, Vertex AI Workbench utilise la clé que vous désignez, et non une clé gérée par Google, pour chiffrer les données sur les disques de démarrage de la VM.

La clé CMEK ne chiffre pas les métadonnées, telles que le nom et la région de l'instance, associées à votre instance Vertex AI Workbench. Les métadonnées associées aux instances Vertex AI Workbench sont toujours chiffrées à l'aide du mécanisme de chiffrement par défaut de Google.

Limites du chiffrement CMEK

Pour réduire la latence et éviter que les ressources ne dépendent de services répartis sur plusieurs domaines de défaillance, nous vous recommandons de protéger les instances Vertex AI Workbench régionales en faisant appel à des clés situées au même emplacement.

  • Vous pouvez chiffrer des instances Vertex AI Workbench régionales à l'aide de clés situées dans le même emplacement ou dans l'emplacement global. Par exemple, vous pouvez chiffrer les données d'un disque situé dans la zone us-west1-a à l'aide d'une clé située dans la région us-west1 ou dans l'emplacement global.
  • Vous pouvez chiffrer des instances globales à l'aide de clés située dans n'importe quel emplacement.
  • Configurer CMEK pour Vertex AI Workbench ne configure pas automatiquement CMEK pour les autres produits Google Cloud que vous utilisez. Pour chiffrer des données dans d'autres produits Google Cloud avec CMEK, vous devez effectuer une configuration supplémentaire.

Configurer CMEK pour votre instance Vertex AI Workbench

Dans les sections suivantes, nous allons voir comment créer un trousseau de clés et une clé dans Cloud Key Management Service, accorder des autorisations de chiffrement et de déchiffrement au compte de service pour votre clé, et créer une instance Vertex AI Workbench utilisant CMEK.

Avant de commencer

Nous vous recommandons d'utiliser une configuration compatible avec la séparation des tâches. Pour configurer CMEK pour Vertex AI Workbench, vous pouvez utiliser deux projets Google Cloud distincts :

  • Un projet Cloud KMS : projet permettant de gérer votre clé de chiffrement.
  • Un projet Vertex AI Workbench : projet permettant d'accéder aux instances Vertex AI Workbench et d'interagir avec tous les autres produits Google Cloud dont vous avez besoin pour votre cas d'utilisation.

Vous pouvez également utiliser un seul projet Google Cloud. Pour ce faire, utilisez le même projet pour toutes les tâches suivantes.

Configurer le projet Cloud KMS

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Cloud KMS API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Cloud KMS API.

    Enable the API

Configurer le projet Vertex AI Workbench

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Make sure that billing is enabled for your Google Cloud project.

  4. Enable the Notebooks API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Make sure that billing is enabled for your Google Cloud project.

  7. Enable the Notebooks API.

    Enable the API

Configurer Google Cloud CLI

L'utilisation de la CLI gcloud est obligatoire pour certaines étapes de ce guide et facultative pour d'autres.

Install the Google Cloud CLI, then initialize it by running the following command:

gcloud init

Créer un trousseau de clés et une clé

Lorsque vous créez un trousseau et une clé, tenez compte des exigences suivantes :

  • Lorsque vous choisissez l'emplacement de votre trousseau de clés, utilisez l'emplacement global ou l'emplacement de votre instance Vertex AI Workbench.

  • Assurez-vous de créer votre trousseau et votre clé dans votre projet Cloud KMS.

Pour créer un trousseau et une clé, consultez la page Créer des clés de chiffrement symétriques.

Accorder des autorisations à Vertex AI Workbench

Pour utiliser CMEK pour votre instance Vertex AI Workbench, vous devez autoriser votre instance Vertex AI Workbench à chiffrer et déchiffrer des données à l'aide de votre clé. Vous accordez cette autorisation à l'agent de service de votre projet et au compte de service Compute Engine.

Pour rechercher les comptes spécifiques de votre projet Vertex AI Workbench, utilisez la console Google Cloud.

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

    Accéder à IAM

  2. Sélectionnez Inclure les attributions de rôles fournies par Google.

  3. Recherchez les membres qui correspondent aux formats d'adresse e-mail suivants. Notez ces adresses e-mail et utilisez-les dans les étapes suivantes.

    • L'adresse e-mail de l'agent de service de votre projet se présente comme suit :

      service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
      
    • L'adresse e-mail du compte de service Compute Engine se présente comme suit :

      service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com
      

    Remplacez NOTEBOOKS_PROJECT_NUMBER par le numéro de projet de votre projet Vertex AI Workbench.

    Pour autoriser ces comptes à chiffrer et à déchiffrer des données à l'aide de votre clé, vous pouvez utiliser la console Google Cloud ou Google Cloud CLI.

    Console

    1. Dans Google Cloud Console, accédez à la page Clés cryptographiques.

      Accéder à la page Clés cryptographiques

    2. Sélectionnez votre projet Cloud KMS.

    3. Cliquez sur le nom du trousseau que vous avez créé à l'étape Créer un trousseau de clés et une clé. La page Détails du trousseau s'ouvre.

    4. Cochez la case correspondant à la clé que vous avez créée à l'étape Créer un trousseau de clés et une clé. Si un panneau d'informations portant le nom de votre clé n'est pas déjà ouvert, cliquez sur Afficher le panneau d'informations.

    5. Dans le panneau d'informations, cliquez sur Ajouter un membre . La boîte de dialogue Ajouter des membres à "KEY_NAME" s'ouvre. Dans cette boîte de dialogue, procédez comme suit :

      1. Dans le champ Nouveaux membres, saisissez l'adresse e-mail de l'agent de service de votre projet :

        service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com
        
      2. Dans la liste Sélectionner un rôle, cliquez sur Cloud KMS, puis sur le rôle Chiffreur/Déchiffreur de clé de chiffrement Cloud KMS.

      3. Cliquez sur Enregistrer.

    6. Répétez ces étapes pour l'agent de service Compute Engine :

      service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com
      

    gcloud

    1. Pour autoriser l'agent de service de votre projet à chiffrer et à déchiffrer des données à l'aide de votre clé, exécutez la commande suivante :

      gcloud kms keys add-iam-policy-binding KEY_NAME \
        --keyring=KEY_RING_NAME \
        --location=REGION \
        --project=KMS_PROJECT_ID \
        --member=serviceAccount:service-NOTEBOOKS_PROJECT_NUMBER@gcp-sa-notebooks.iam.gserviceaccount.com \
        --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
      

      Remplacez les éléments suivants :

      • KEY_NAME : nom de la clé que vous avez créée à l'étape Créer un trousseau de clés et une clé.
      • KEY_RING_NAME : trousseau de clés que vous avez créé à l'étape Créer un trousseau de clés et une clé.
      • REGION : région dans laquelle vous avez créé votre trousseau de clés.
      • KMS_PROJECT_ID : ID de votre projet Cloud KMS.
      • NOTEBOOKS_PROJECT_NUMBER : numéro de votre projet Vertex AI Workbench, indiqué dans la section précédente dans l'adresse e-mail d'un compte de service.
    2. Pour autoriser le compte de service Compute Engine à chiffrer et déchiffrer des données à l'aide de votre clé, exécutez la commande suivante :

      gcloud kms keys add-iam-policy-binding KEY_NAME \
        --keyring=KEY_RING_NAME \
        --location=REGION \
        --project=KMS_PROJECT_ID \
        --member=serviceAccount:service-NOTEBOOKS_PROJECT_NUMBER@compute-system.iam.gserviceaccount.com \
        --role=roles/cloudkms.cryptoKeyEncrypterDecrypter
      

Créer une instance Vertex AI Workbench avec CMEK

Après avoir accordé à votre instance Vertex AI Workbench l'autorisation de chiffrer et de déchiffrer des données à l'aide de votre clé, vous pouvez créer une instance Vertex AI Workbench qui chiffre les données à l'aide de cette clé.

L'exemple suivant montre comment chiffrer et déchiffrer des données avec votre clé à l'aide de la console Google Cloud.

Pour créer une instance Vertex AI Workbench avec une clé de chiffrement gérée par le client, procédez comme suit :

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

    Accéder à la page "Instances"

  2. Cliquez sur  Créer.

  3. Dans la boîte de dialogue Nouvelle instance, cliquez sur Options avancées.

  4. Dans la boîte de dialogue Créer une instance, dans la section Détails, fournissez les informations suivantes pour la nouvelle instance :

    • Nom : nom de la nouvelle instance.
    • Région : région dans laquelle se trouve votre clé et votre trousseau.
    • Zone : zone dans la région que vous avez sélectionnée.
  5. Dans la section Disques, dans Chiffrement, sélectionnez Clé de chiffrement gérée par le client (CMEK).

  6. Cliquez sur Sélectionner une clé gérée par le client.

    • Si la clé gérée par le client que vous souhaitez utiliser figure dans la liste, sélectionnez-la.
    • Si la clé gérée par le client que vous souhaitez utiliser ne figure pas dans la liste, saisissez son ID de ressource. L'ID de ressource de votre clé gérée par le client se présente comme suit :

      projects/NOTEBOOKS_PROJECT_NUMBER/locations/global/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
      

      Remplacez les éléments suivants :

  7. Renseignez le reste de la boîte de dialogue de création d'instance, puis cliquez sur Créer.

Étapes suivantes