Clés de chiffrement gérées par le client (CMEK)

Par défaut, Google Cloud chiffre automatiquement les données à l'aide de clés 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 en savoir plus sur le chiffrement CMEK, consultez le guide CMEK dans la documentation de Cloud Key Management Service (KMS).

Données protégées

Toutes les données au repos de l'agent Dialogflow CX peuvent être protégées par des CMEK.

Limites

  • Actuellement, Analytics est désactivé pour les agents avec CMEK activé.
  • Actuellement, la rotation des clés n'est pas disponible pour les agents de data store. Les agents Dialogflow CX sans data stores sont compatibles avec la rotation des clés. Dans tous les cas, le rechiffrement des données précédemment chiffrées à l'aide d'une nouvelle version de clé n'est possible.
  • L'emplacement global n'est pas disponible.
  • Vous devez utiliser une clé par emplacement de projet.
  • Pour restaurer un agent sur lequel CMEK est activé, vous devez choisir l'option Cloud Storage.
  • Les ressources existantes des projets intégrés non CMEK ne peuvent pas être intégrées rétroactivement. À la place, il est recommandé d'exporter et de restaurer les ressources dans un nouveau projet pour les CMEK.

Créer des clés

Pour créer des clés, vous devez utiliser le service KMS. Pour obtenir des instructions, consultez la section Créer des clés symétriques. Lorsque vous créez ou choisissez une clé, vous devez configurer les éléments suivants :

  • Assurez-vous de sélectionner l'emplacement que vous utilisez pour votre agent. Sinon, les requêtes échoueront.
  • Dialogflow n'est pas compatible avec la rotation des clés. Lorsque vous créez la clé, la période de rotation doit être définie sur Never (Jamais).

Configurer un agent pour utiliser vos clés

Lorsque vous créez un agent, vous pouvez spécifier son emplacement et indiquer si l'agent utilisera une clé gérée par Google ou par le client. Sélectionnez votre clé à ce stade.

Configurer votre compte de service ou votre compte utilisateur

  1. Créez le compte de service CCAI CMEK de votre projet avec la Google Cloud CLI. Pour en savoir plus, consultez la documentation sur l'identité des services gcloud.

    gcloud beta services identity create --service=dialogflow.googleapis.com --project=PROJECT_ID
    

    Le compte de service sera créé. Il ne sera pas renvoyé dans la réponse "create", mais aura le format suivant:

    service-PROJECT_NUMBER@gcp-sa-ccai-cmek.iam.gserviceaccount.com
    
  2. Attribuez au compte de service CMEK CCAI le rôle Chiffreur/Déchiffreur de clés cryptographiques Cloud KMS afin de vous assurer que le service est autorisé à chiffrer et à déchiffrer les données avec votre clé.

    gcloud kms keys add-iam-policy-binding KMS_KEY_ID \
    --project=PROJECT_ID \
    --location=LOCATION_ID \
    --keyring=KMS_KEY_RING \
    --member=serviceAccount:service-PROJECT_NUMBER@gcp-sa-ccai-cmek.iam.gserviceaccount.com \
    --role=roles/cloudkms.cryptoKeyEncrypterDecrypter