Activer les clés de chiffrement gérées par le client

Ce document explique comment chiffrer les données Knowledge Catalog (anciennement Dataplex Universal Catalog) avec des clés de chiffrement gérées par le client (CMEK).

Présentation

Par défaut, Knowledge Catalog chiffre le contenu client au repos. Knowledge Catalog gère le chiffrement sans intervention de votre part. Cette option est appelée chiffrement par défaut de Google.

Si vous souhaitez contrôler vos clés de chiffrement, vous pouvez utiliser des clés de chiffrement gérées par le client (CMEK) dans Cloud KMS avec des services bénéficiant d'une intégration des CMEK, y compris Knowledge Catalog. L'utilisation de clés Cloud KMS vous permet de contrôler leur niveau de protection, leur emplacement, leur calendrier de rotation, leurs autorisations d'utilisation et d'accès, ainsi que leurs limites cryptographiques. Cloud KMS vous permet également de suivre l'utilisation des clés, de consulter les journaux d'audit et de contrôler les cycles de vie des clés. Au lieu de laisser Google posséder et gérer les clés de chiffrement de clés (KEK) symétriques qui protègent vos données, c'est vous qui vous chargez de cette tâche dans Cloud KMS.

Une fois que vous avez configuré vos ressources avec des CMEK, l'accès à vos ressources Knowledge Catalog est semblable à celui du chiffrement par défaut de Google. Pour en savoir plus sur les options de chiffrement, consultez Clés de chiffrement gérées par le client (CMEK).

Knowledge Catalog utilise une CMEK par emplacement pour toutes les ressources Knowledge Catalog.

Vous pouvez configurer une clé CMEK au niveau de l'organisation dans Knowledge Catalog.

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

Avantages du chiffrement CMEK

Les CMEK vous permettent d'effectuer les opérations suivantes :

  • Gérer les opérations de cycle de vie des clés et les autorisations d'accès.
  • Suivez l'utilisation des clés avec l'API Key Inventory et les tableaux de bord d'utilisation des clés dans Cloud KMS, qui vous permettent de voir quelles clés protègent quelles ressources. Cloud Logging vous indique quand les clés ont été consultées et par qui.
  • Répondez à des exigences réglementaires spécifiques en gérant vos clés de chiffrement.

Fonctionnement des CMEK avec Knowledge Catalog

Les administrateurs du chiffrement Knowledge Catalog de votre projet Google Cloud peuvent configurer CMEK pour Knowledge Catalog en fournissant la clé Cloud KMS. Knowledge Catalog utilise ensuite la clé Cloud KMS spécifiée pour chiffrer toutes les données, y compris les données existantes et toutes les nouvelles ressources créées dans Knowledge Catalog.

Fonctionnalités compatibles

Remarques

  • Par défaut, chaque organisation est provisionnée à l'aide du chiffrement par défaut de Google.
  • L'administrateur de l'organisation (roles/resourcemanager.organizationAdmin) peut passer à CMEK dans Knowledge Catalog pour n'importe quel emplacement.
  • Knowledge Catalog est compatible avec les clés Cloud KMS, Cloud HSM et Cloud External Key Manager.
  • La rotation des clés est possible. Une fois disponible, la nouvelle version de la clé est automatiquement utilisée pour le chiffrement des données. Les données existantes sont également chiffrées avec cette nouvelle version.
  • Knowledge Catalog conserve les sauvegardes de données pendant 15 jours maximum. Toutes les sauvegardes créées après l'activation de CMEK sont chiffrées à l'aide de la clé KMS spécifiée. Les données sauvegardées avant l'activation des CMEK restent chiffrées avec le chiffrement par défaut de Google pendant 15 jours maximum.

Limites

  • Le passage à une CMEK est un processus irréversible. Une fois que vous avez opté pour les CMEK, vous ne pouvez pas revenir au chiffrement par défaut de Google.
  • Une fois qu'une clé Cloud KMS est configurée pour Knowledge Catalog, elle ne peut plus être mise à jour ni modifiée.
  • Knowledge Catalog n'est compatible qu'avec le chiffrement au niveau de l'organisation. Par conséquent, la configuration de chiffrement est définie au niveau de l'organisation pour un emplacement donné et est utilisée pour chiffrer les données Knowledge Catalog de tous les projets de cette organisation et de cet emplacement. Le chiffrement CMEK n'est pas compatible avec des projets spécifiques d'une organisation ou d'un dossier. La définition de règles d'administration liées aux CMEK nécessite une attention particulière.
  • Knowledge Catalog n'est pas compatible avec les clés CMEK dans la région globale.
  • Lorsque CMEK est activé pour Knowledge Catalog, les fonctionnalités suivantes ne fonctionnent pas :

    • Recherche de métadonnées interorganisationnelle
  • Lorsque vous activez CMEK dans Knowledge Catalog, ne migrez pas de projets vers ou depuis l'organisation CMEK. La modification de l'emplacement d'un projet dans l'organisation entraînera la perte définitive des métadonnées stockées dans Knowledge Catalog pour ce projet.

Mettre à niveau les configurations CMEK existantes

Si vous avez activé CMEK dans Knowledge Catalog avant le 7 novembre 2025, exécutez la commande suivante pour étendre la couverture CMEK à Knowledge Catalog et à la recherche Knowledge Catalog :

  gcloud dataplex encryption-config update organizations/ORG_ID/locations/LOCATION/encryptionConfigs/default --enable-metastore-encryption
  • Remplacez ORG_ID par l'ID de l'organisation contenant la clé.
  • Remplacez LOCATION par l'emplacement de l'organisation qui contient la clé.

Lorsque les données sont chiffrées, vous pouvez rencontrer un problème de disponibilité de Knowledge Catalog.

Si vous activez CMEK pour la première fois après le 7 novembre 2025, Knowledge Catalog Metastore et Search sont inclus par défaut dans la couverture CMEK.

Protéger vos clés de chiffrement

Pour garantir un accès continu aux données chiffrées par CMEK, suivez ces bonnes pratiques :

  • Assurez-vous que vos clés CMEK restent activées et accessibles. Si une clé est désactivée ou détruite, les données Knowledge Catalog deviennent inaccessibles. Si la clé n'est pas disponible pendant plus de 30 jours, les données chiffrées avec cette clé sont automatiquement supprimées et ne peuvent pas être récupérées.
  • Si la clé Cloud KMS est détruite et irrécupérable, toutes les données Knowledge Catalog associées seront définitivement perdues.
  • Si Cloud KMS est temporairement indisponible, Knowledge Catalog continue de prendre en charge l'ensemble des opérations dans la mesure du possible pendant une heure maximum. Passé ce délai, les données deviendront temporairement inaccessibles par mesure de protection.
  • Lorsque vous utilisez Cloud EKM, sachez que Google ne contrôle pas la disponibilité de vos clés gérées en externe. L'indisponibilité d'une clé à court terme entraîne une inaccessibilité temporaire des données. Si la clé reste indisponible pendant 30 jours, les données sont définitivement perdues.

Disponibilité de Knowledge Catalog

Les sections suivantes décrivent le processus et l'impact opérationnel attendu lorsque vous activez les CMEK pour votre organisation Knowledge Catalog.

Provisionnement initial de l'infrastructure

Une fois que vous avez enregistré la configuration de chiffrement, Knowledge Catalog configure l'infrastructure nécessaire. Cette procédure prend généralement entre 6 et 8 heures. Pendant cette phase de provisionnement, vous conservez un accès complet à toutes les fonctionnalités de Knowledge Catalog, et les données restent chiffrées à l'aide du chiffrement géré par Google. Si la règle d'administration constraints/gcp.restrictNonCmekServices est définie, les requêtes de création de ressources échouent jusqu'à ce que la phase de provisionnement soit terminée.

Chiffrement des données et disponibilité de l'API

Une fois l'infrastructure provisionnée, Knowledge Catalog commence à chiffrer les données existantes stockées dans l'organisation. Pour garantir l'intégrité des données et éviter d'éventuelles incohérences pendant ce processus de chiffrement, les méthodes de l'API Dataplex sont temporairement indisponibles. Cette restriction empêche les opérations de mise à jour des données. Lorsque vous activez CMEK pour Knowledge Catalog, toutes les données existantes sont chiffrées. Cette opération unique devrait prendre jusqu'à deux heures.

Opérations post-chiffrement

Une fois le chiffrement des données existantes terminé, les méthodes de l'API Dataplex sont entièrement disponibles. La création ou la modification de données dans Knowledge Catalog est automatiquement chiffrée à l'aide de la CMEK configurée, sans interruption opérationnelle ni restriction d'API.

Créer une clé et activer les CMEK

Les instructions suivantes expliquent comment créer une clé et activer les CMEK pour Knowledge Catalog. Vous pouvez utiliser une clé créée directement dans Cloud KMS ou une clé gérée en externe que vous rendez disponible avec Cloud EKM.

  1. Dans le projet Google Cloud où vous souhaitez gérer vos clés, procédez comme suit :

    1. Activez l'API Cloud Key Management Service.

    2. Créez un trousseau de clés Cloud KMS à l'emplacement où vous souhaitez l'utiliser.

    3. Créez une clé à l'aide de l'une des options suivantes :

      Si vous utilisez un gestionnaire de clés externe (Cloud EKM), vous devez autoriser le compte de service Cloud KMS à accéder à votre clé dans le système de votre partenaire de gestion de clés externe. Si vous vous connectez à votre gestionnaire de clés externe via un VPC, vous devez également attribuer au compte de service Cloud EKM (service-KEY_PROJECT_NUMBER@gcp-sa-ekms.iam.gserviceaccount.com) les rôles Lecteur de l'Annuaire des services (roles/servicedirectory.viewer) et Service autorisé Private Service Connect (roles/servicedirectory.pscAuthorizedService) dans votre projet VPC. Pour en savoir plus, consultez Créer une connexion EKM.

  2. Créez et affichez le compte de service géré par Google :

    gcloud beta services identity create \
        --service=dataplex.googleapis.com \
        --organization=ORG_ID
    

    Remplacez ORG_ID par l'ID de l'organisation contenant la clé.

    Si vous êtes invité à installer le composant de commandes bêta de la Google Cloud CLI, saisissez Y.

    La commande gcloud CLI services identity crée ou obtient le compte de service géré par Google spécifique que Knowledge Catalog peut utiliser pour accéder à la clé Cloud KMS.

    L'ID de compte de service se présente sous la forme service-org-ORG_ID@gcp-sa-dataplex.iam.gserviceaccount.com. Un compte de service spécifique aux CMEK est également créé, au format service-org-ORG_ID@gcp-sa-dataplex-cmek.iam.gserviceaccount.com. Le compte de service spécifique aux CMEK est utilisé pour chiffrer et déchiffrer les données stockées dans Knowledge Catalog. Si vous utilisez VPC Service Controls pour la clé Cloud KMS, vous devez accorder l'accès au compte de service spécifique à la CMEK à l'aide d'une règle d'entrée.

  3. Attribuez le rôle IAM Chiffreur/Déchiffreur de CryptoKeys Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter) au compte de service Knowledge Catalog. Accordez cette autorisation sur la clé que vous avez créée.

    Si vous utilisez un gestionnaire de clés externe (Cloud EKM), assurez-vous que votre système de gestion de clés externe accorde également des autorisations d'accès au compte de service Cloud KMS (service-KEY_PROJECT_NUMBER@gcp-sa-cloudkms.iam.gserviceaccount.com).

    Console

    1. Accédez à la page Gestion des clés.

      Accéder à la page "Gestion des clés"

    2. Cliquez sur le trousseau de clés.

    3. Dans la liste des clés disponibles, cliquez sur celle que vous avez créée.

    4. Cliquez sur l'onglet Autorisations.

    5. Cliquez sur Accorder l'accès.

    6. Dans le volet Accorder l'accès qui s'ouvre, procédez comme suit pour accorder l'accès au compte de service Knowledge Catalog :

      1. Dans Ajouter des comptes principaux, saisissez le compte de service service-org-ORG_ID@gcp-sa-dataplex.iam.gserviceaccount.com.
      2. Dans Attribuer des rôles, sélectionnez le rôle Chiffreur/Déchiffreur de CryptoKeys Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter).
      3. Cliquez sur Enregistrer.

    gcloud

    Attribuez le rôle Chiffreur/Déchiffreur de CryptoKeys Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter) au compte de service :

    gcloud kms keys add-iam-policy-binding KEY_NAME \
        --location=LOCATION \
        --keyring KEY_RING \
        --project=KEY_PROJECT_ID \
        --member serviceAccount:service-org-ORG_ID@gcp-sa-dataplex.iam.gserviceaccount.com \
        --role roles/cloudkms.cryptoKeyEncrypterDecrypter
    

    Remplacez les éléments suivants :

    • KEY_NAME : nom de la clé
    • LOCATION : emplacement
    • KEY_RING : trousseau de clés
    • KEY_PROJECT_ID : ID du projet de la clé
  4. Attribuez-vous le rôle Administrateur du chiffrement Dataplex (roles/dataplex.encryptionAdmin).

    Console

    Suivez les instructions pour attribuer un rôle IAM.

    gcloud

    gcloud organizations add-iam-policy-binding ORG_ID \
        --member='user:USER_EMAIL' \
        --role='roles/dataplex.encryptionAdmin'
    

    Remplacez les éléments suivants :

    • ORG_ID : ID de l'organisation contenant la clé.
    • USER_EMAIL : adresse e-mail de l'utilisateur.
  5. Configurez Knowledge Catalog pour qu'il utilise votre clé CMEK.

    Console

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

      Accéder à Knowledge Catalog

    2. Cliquez sur Paramètres.

    3. Dans Sélectionner une région pour la CMEK, sélectionnez une région. La région que vous sélectionnez doit correspondre à l'emplacement de la clé Cloud KMS.

    4. Dans Sélectionner une clé de chiffrement, sélectionnez la clé que vous avez créée.

    5. Cliquez sur Enregistrer.

      Le processus de chiffrement des données prend un certain temps. Une fois le processus terminé, le message suivant s'affiche : Data Encryption is complete. Your selected CMEK key is now protecting your data..

    gcloud

    1. Définissez la configuration de chiffrement dans Knowledge Catalog :

      gcloud dataplex encryption-config create default \
          --location=LOCATION \
          --organization=ORG_ID \
          --key=KEY_RESOURCE_ID
      

      Remplacez les éléments suivants :

      • ORG_ID : ID de l'organisation contenant la clé.
      • KEY_RESOURCE_ID : ID de ressource de la clé (par exemple, projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME). Remplacez PROJECT_ID par l'ID du projet de clé.

    2. Vérifiez que le processus de chiffrement est terminé :

      gcloud dataplex encryption-config describe default \
          --location=LOCATION \
          --organization=ORG_ID
      

    Le processus de chiffrement des données prend un certain temps. Une fois le processus terminé, le message suivant s'affiche : encryptionState: COMPLETED.

Journalisation et surveillance

Auditez les requêtes Knowledge Catalog envoyées à Cloud KMS en activant la journalisation d'audit pour l'API Cloud Key Management Service.

Règles d'administration CMEK

Google Cloud fournit des contraintes de règle d'administration pour appliquer l'utilisation des CMEK et contrôler les clés Cloud KMS autorisées au sein de votre organisation. Ces contraintes permettent de s'assurer que les données de Knowledge Catalog sont systématiquement protégées par CMEK.

  • constraints/gcp.restrictNonCmekServices applique l'utilisation obligatoire de CMEK pour les ressources Knowledge Catalog.

    • L'ajout de dataplex.googleapis.com à la liste des noms de services Google Cloud et la définition de la contrainte sur Deny empêchent la création de ressources Knowledge Catalog qui ne sont pas protégées par CMEK.

    • Si aucune clé Cloud KMS n'est spécifiée pour l'emplacement demandé dans les paramètres de chiffrement CMEK, les requêtes de création de ressources dans Knowledge Catalog échoueront.

    • Cette règle est validée au niveau du projet de ressource individuel.

  • constraints/gcp.restrictCmekCryptoKeyProjects limite la sélection des clés Cloud KMS pour les CMEK aux hiérarchies de ressources désignées.

    • En configurant une liste d'indicateurs de hiérarchie des ressources (projets, dossiers ou organisations) et en définissant la contrainte sur Allow, Knowledge Catalog est limité à l'utilisation de clés CMEK provenant uniquement des emplacements spécifiés.

    • Si une clé Cloud KMS provenant d'un projet non autorisé est fournie, les requêtes de création de ressources protégées par CMEK dans Knowledge Catalog échoueront.

    • Cette règle est validée au niveau du projet de ressource lors de la création de la ressource.

    • Cette règle est validée au niveau de l'organisation lors de la configuration des paramètres de chiffrement CMEK.

    • Pour éviter les incohérences, assurez-vous que les configurations au niveau du projet sont conformes aux règles de l'organisation.

Pour en savoir plus sur la configuration des règles d'administration#39;administration, consultez Règles d'administration CMEK.

Autorisations CMEK pour les analyses de données Knowledge Catalog

Pour créer des analyses de profilage des données ou de qualité des données sur des ressources BigQuery chiffrées par CMEK, attribuez le rôle Chiffreur/Déchiffreur de CryptoKeys Cloud KMS (roles/cloudkms.cryptoKeyEncrypterDecrypter) sur la clé Cloud KMS qui protège l'ensemble de données BigQuery aux agents de service Knowledge Catalog et BigQuery.

Attribuez le rôle roles/cloudkms.cryptoKeyEncrypterDecrypter à l'agent de service Knowledge Catalog :

gcloud kms keys add-iam-policy-binding KEY_NAME \
    --location=LOCATION \
    --keyring=KEYRING_NAME \
    --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-dataplex.iam.gserviceaccount.com" \
    --role="roles/cloudkms.cryptoKeyEncrypterDecrypter"

Attribuez le rôle roles/cloudkms.cryptoKeyEncrypterDecrypter à l'agent de service BigQuery :

gcloud kms keys add-iam-policy-binding KEY_NAME \
    --location=LOCATION \
    --keyring=KEYRING_NAME \
    --member="serviceAccount:bq-PROJECT_NUMBER@bigquery-encryption.iam.gserviceaccount.com" \
    --role="roles/cloudkms.cryptoKeyEncrypterDecrypter"

Remplacez les éléments suivants :

  • KEY_NAME : nom de la clé Cloud KMS qui protège l'ensemble de données BigQuery.
  • LOCATION : emplacement du trousseau de clés.
  • KEYRING_NAME : nom du trousseau de clés.
  • PROJECT_NUMBER : numéro de votre projet Google Cloud .

Étapes suivantes

  • En savoir plus sur CMEK