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 clés CMEK.

Limites

  • Analytics est désactivé pour les agents avec CMEK activé.
  • Les agents de data store n'acceptent pas la rotation des clés. Les agents Dialogflow CX sans data stores acceptent la rotation des clés, qui consiste à chiffrer les nouvelles données avec la nouvelle version de clé. Il n'est pas possible de rechiffrer des données précédemment chiffrées avec une nouvelle version de clé.
  • L'emplacement global n'est pas accepté.
  • Vous devez utiliser une clé par emplacement de projet.
  • Pour restaurer un agent avec CMEK 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 CMEK rétroactivement. Nous vous recommandons plutôt 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 pour les agents de data store. Si vous utilisez un agent de ce type, la période de rotation doit être définie sur Never lorsque vous créez la clé.

Configurer un agent pour utiliser vos clés

Lorsque vous créez un agent, vous pouvez spécifier son emplacement et déterminer s'il utilisera une clé gérée par Google ou une clé gérée par le client déjà configurée pour cet emplacement. Effectuez vos sélections à ce moment-là.

Configurer votre compte de service ou votre compte utilisateur

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

    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 de création, mais il 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 des données à l'aide de 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