Utiliser des CMEK avec Dataproc sans serveur

Lorsque vous utilisez Dataproc sans serveur, les données sont stockées sur des disques une infrastructure sans serveur et dans un Cloud Storage bucket de préproduction. Ces données sont chiffrées à l'aide d'une clé de chiffrement des données (DEK) générée par Google et une clé de chiffrement de clé (KEK). Vous pouvez utiliser une clé de chiffrement gérée par le client (CMEK) pour créer, utiliser et révoquer la clé de chiffrement de clé (KEK). Google conserve le contrôle de la clé de chiffrement des données (DEK). Pour en savoir plus sur les clés de chiffrement de données Google, consultez Chiffrement par défaut au repos.

Utiliser CMEK

Suivez les étapes de cette section pour utiliser une clé CMEK afin de chiffrer les données que Dataproc sans serveur écrit sur le disque persistant et dans le bucket de préproduction Dataproc.

  1. Créez une clé à l'aide de la méthode Cloud Key Management Service (Cloud KMS) :

  2. Copiez le nom de la ressource.

    <ph type="x-smartling-placeholder">
    </ph>
    Le nom de la ressource se présente comme suit:
    projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING_NAME/cryptoKeys/KEY_NAME
    

  3. Activer les agents de service Compute Engine, Dataproc et Cloud Storage comptes de service pour utiliser votre clé:

    1. Consultez Protéger les ressources à l'aide de clés Cloud KMS &gt; Rôles requis. pour attribuer le rôle Chiffreur/Déchiffreur de CryptoKeys Cloud KMS au Compte de service de l'agent de service Compute Engine. Si ce compte de service ne figure pas dans la liste Sur la page IAM de la console Google Cloud, cliquez sur Inclure les attributions de rôles fournies par Google. pour la lister.
    2. Attribuez le rôle Chiffreur/Déchiffreur de CryptoKeys Cloud KMS. au compte de service de l'agent de service Dataproc. Pour attribuer le rôle, vous pouvez utiliser Google Cloud CLI comme suit :

       gcloud projects add-iam-policy-binding KMS_PROJECT_ID \
       --member serviceAccount:service-PROJECT_NUMBER@dataproc-accounts.iam.gserviceaccount.com \
       --role roles/cloudkms.cryptoKeyEncrypterDecrypter
      

      Remplacez les éléments suivants :

      KMS_PROJECT_ID: ID du projet Google Cloud que exécute Cloud KMS. Ce projet peut également exécuter des ressources Dataproc.

      PROJECT_NUMBER: numéro (et non l'ID) de votre projet Google Cloud qui exécute des ressources Dataproc.

    3. Activez l'API Cloud KMS sur le projet qui exécute les ressources Dataproc sans serveur.

    4. Si le rôle d'agent de service Dataproc n'est pas associé au compte de service d'agent de service Dataproc, puis ajoutez l'autorisation serviceusage.services.use associé au compte de service de l'agent de service Dataproc. Si le rôle d'agent de service Dataproc est associé au compte de service de l'agent de service Dataproc, vous pouvez ignorer cette étape.

    5. Suivez les étapes pour ajoutez votre clé sur le bucket.

  4. Lorsque vous Envoyer une charge de travail par lot:

    1. Spécifiez votre clé dans le fichier Batch. kmsKey .
    2. Indiquez le nom de votre bucket Cloud Storage dans le fichier Batch stagingBucket.