Ce document explique comment inspecter une table BigQuery pour détecter les données sensibles et envoyer les résultats de l'inspection à Knowledge Catalog. Cette action ajoute automatiquement un aspect à l'entrée Knowledge Catalog associée à votre table BigQuery.
Ce document fournit également des exemples de requêtes que vous pouvez utiliser pour trouver des données dans votre organisation et vos projets avec des valeurs d'aspect spécifiques.
Cette fonctionnalité est utile si vous souhaitez enrichir vos métadonnées dans Knowledge Catalog avec des classifications de données sensibles issues des jobs d'inspection de Sensitive Data Protection.
Les aspects générés incluent les informations suivantes :
- Nom du job d'inspection
- Types d'informations (infoTypes) détectés dans le tableau
À propos de Knowledge Catalog
Knowledge Catalog fournit un inventaire unifié des ressources Google Cloud .
Knowledge Catalog vous permet d'utiliser des aspects pour ajouter des métadonnées métier et techniques à vos données afin de capturer le contexte et les connaissances sur vos ressources. Vous pouvez ensuite rechercher et découvrir des données dans toute votre organisation, et activer la gouvernance des données sur vos ressources de données. Pour en savoir plus, consultez Aspects.
Fonctionnement
Pour créer automatiquement des aspects Knowledge Catalog en fonction des résultats des tâches d'inspection, suivez ce workflow général :
Créez ou modifiez un job d'inspection qui inspecte une table BigQuery. Pour obtenir des instructions, consultez Inspecter une table BigQuery.
À l'étape Ajouter des actions, activez Publier dans Dataplex Universal Catalog.
Sensitive Data Protection ajoute ou met à jour l'aspect Sensitive Data Protection job result de l'entrée Knowledge Catalog associée à la table BigQuery. Vous pouvez ensuite rechercher dans Knowledge Catalog toutes les données de votre organisation ou de votre projet avec des valeurs d'aspect spécifiques. Pour obtenir des exemples de requêtes, consultez la section Exemples de requêtes de recherche de ce document.
L'aspect Knowledge Catalog obtenu est stocké dans le même projet et la même région que la table BigQuery.
Champs d'aspect
L'aspect Sensitive Data Protection job result comporte les champs suivants :
- Nom du job
- : nom complet de la ressource du job d'inspection (par exemple,
projects/example-project/locations/us/dlpJobs/i-8992079400000000000). - Nombre d'infoTypes
- Noms des infoTypes recherchés par le job d'inspection (tels que spécifiés dans la configuration de l'inspection) et nombre de résultats pour chaque infoType.
Un infoType sans résultat a un nombre de
0. - Heure de fin
- Date et heure de fin du job d'inspection.
- Is Full Scan
- Indique si le job d'inspection a analysé toutes les lignes de la table. Si l'échantillonnage est activé dans le job d'inspection, par exemple, la valeur de ce champ est
False. - Comporte des résultats
- Indique si le job d'inspection a détecté l'un des infoTypes qu'il a analysés.
Activer l'API Dataplex
L'API Dataplex doit être activée dans chaque projet contenant des données pour lesquelles vous souhaitez ajouter des aspects. Cette section explique comment activer l'API Dataplex dans un seul projet ou dans tous les projets d'une organisation ou d'un dossier.
Activer l'API Dataplex dans un seul projet
Sélectionnez le projet dans lequel vous souhaitez activer l'API Dataplex.
-
Activez l'API Dataplex si ce n'est pas déjà fait.
Rôles requis pour activer les API
Pour activer les API, vous devez disposer de l'autorisation
serviceusage.services.enable. Si vous avez créé le projet, vous disposez probablement déjà de cette autorisation grâce au rôle Propriétaire (roles/owner). Sinon, vous pouvez obtenir cette autorisation grâce au rôle Administrateur Service Usage (roles/serviceusage.serviceUsageAdmin). Découvrez comment attribuer des rôles.
Activer l'API Dataplex dans tous les projets d'une organisation ou d'un dossier
Cette section fournit un script qui recherche tous les projets d'une organisation ou d'un dossier, et active l'API Dataplex dans chacun de ces projets.
Pour obtenir les autorisations nécessaires pour activer l'API Dataplex dans tous les projets d'une organisation ou d'un dossier, demandez à votre administrateur de vous accorder les rôles IAM suivants :
- Lecteur d'éléments Cloud (
roles/cloudasset.viewer) sur l'organisation ou le dossier - Utilisateur DLP (
roles/dlp.user) sur chaque projet dans lequel vous souhaitez activer l'API Dataplex
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour activer l'API Dataplex dans tous les projets d'une organisation ou d'un dossier. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour activer l'API Dataplex dans tous les projets d'une organisation ou d'un dossier :
-
Pour rechercher tous les projets d'une organisation ou d'un dossier :
cloudasset.assets.searchAllResourcessur l'organisation ou le dossier -
Pour activer l'API Dataplex :
serviceusage.services.usesur chaque projet dans lequel vous souhaitez activer l'API Dataplex
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour activer l'API Dataplex dans tous les projets d'une organisation ou d'un dossier, procédez comme suit :
-
Dans la console Google Cloud , activez Cloud Shell.
En bas de la console Google Cloud , une session Cloud Shell démarre et affiche une invite de ligne de commande. Cloud Shell est un environnement shell dans lequel Google Cloud CLI est déjà installé, et dans lequel des valeurs sont déjà définies pour votre projet actuel. L'initialisation de la session peut prendre quelques secondes.
Exécutez le script suivant :
#!/bin/bash RESOURCE_ID="RESOURCE_ID" gcloud asset search-all-resources \ --scope="RESOURCE_TYPE/$RESOURCE_ID" \ --asset-types="cloudresourcemanager.googleapis.com/Project" \ --format="value(name)" | while read project_name; do project_id=$(echo "$project_name" | sed 's|.*/||') gcloud services enable "dataplex.googleapis.com" --project="$project_id" doneRemplacez les éléments suivants :
RESOURCE_ID: numéro de l'organisation ou du dossier de la ressource contenant les projetsRESOURCE_TYPE: type de ressource contenant les projets (organizationsoufolders)
Rôles et autorisations pour afficher les aspects
Pour obtenir les autorisations nécessaires pour rechercher les aspects associés à votre table BigQuery, demandez à votre administrateur de vous accorder les rôles IAM suivants sur la table :
- Lecteur du catalogue Dataplex (
roles/dataplex.catalogViewer) - Lecteur de données BigQuery (
roles/bigquery.dataViewer)
Pour en savoir plus sur l'attribution de rôles, consultez Gérer l'accès aux projets, aux dossiers et aux organisations.
Ces rôles prédéfinis contiennent les autorisations requises pour rechercher les aspects associés à votre table BigQuery. Pour connaître les autorisations exactes requises, développez la section Autorisations requises :
Autorisations requises
Les autorisations suivantes sont requises pour rechercher les aspects associés à votre table BigQuery :
-
Affichez les entrées Knowledge Catalog :
-
dataplex.entries.list -
dataplex.entries.get
-
-
Affichez les ensembles de données et les tables BigQuery :
-
bigquery.datasets.get -
bigquery.tables.get
-
Vous pouvez également obtenir ces autorisations avec des rôles personnalisés ou d'autres rôles prédéfinis.
Pour en savoir plus sur les autorisations requises pour utiliser Knowledge Catalog, consultez Autorisations IAM pour Knowledge Catalog.
Configurer et exécuter un job d'inspection Sensitive Data Protection
Vous pouvez configurer et exécuter un job d'inspection Sensitive Data Protection à l'aide de la console Google Cloud ou de l'API DLP.
Console
-
Dans la console Google Cloud , accédez à la page Créer un job ou un déclencheur de jobs.
- Sélectionnez votre projet.
- Saisissez les informations requises sur le job d'inspection et sur la table BigQuery que vous souhaitez inspecter. Pour obtenir des instructions, consultez Inspecter une table BigQuery. Pour obtenir la liste complète des types d'informations que Sensitive Data Protection peut inspecter, consultez la documentation de référence du détecteur d'infoTypes.
- Pour Ajouter des actions, activez Publier dans Dataplex Universal Catalog.
- Cliquez sur Créer. La tâche s'exécute immédiatement.
REST
L'exemple suivant envoie une requête projects.locations.dlpJobs.create pour inspecter une table BigQuery et envoyer les résultats à Knowledge Catalog.
Avant d'utiliser les données de requête, effectuez les remplacements suivants :
-
PROJECT_ID: ID de votre projet Google Cloud . Les ID de projet sont des chaînes alphanumériques. -
LOCATION: région ou emplacement multirégional dans lequel vous souhaitez traiter la requête, par exempleeurope-west1ouus. Pour connaître les emplacements disponibles, consultez Emplacements Sensitive Data Protection. -
BIGQUERY_DATASET_NAME: nom de l'ensemble de données BigQuery contenant la table à inspecter -
BIGQUERY_TABLE_NAME: nom de la table BigQuery à inspecter
Méthode HTTP et URL :
POST https://dlp.googleapis.com/v2/projects/PROJECT_ID/locations/LOCATION/dlpJobs
Corps JSON de la requête :
{
"inspectJob":
{
"storageConfig":
{
"bigQueryOptions":
{
"tableReference":
{
"projectId": "PROJECT_ID",
"datasetId": "BIGQUERY_DATASET_NAME",
"tableId": "BIGQUERY_TABLE_NAME"
}
}
},
"inspectConfig":
{
"infoTypes":
[
{
"name": "EMAIL_ADDRESS"
},
{
"name": "PERSON_NAME"
},
{
"name": "US_SOCIAL_SECURITY_NUMBER"
},
{
"name": "PHONE_NUMBER"
}
],
"includeQuote": true,
"minLikelihood": "UNLIKELY",
"limits":
{
"maxFindingsPerRequest": 100
}
},
"actions":
[
{
"publishFindingsToDataplexCatalog": {}
}
]
}
}
Pour envoyer votre requête, développez l'une des options suivantes :
Vous devriez recevoir une réponse JSON de ce type :
{
"name": "projects/PROJECT_ID/locations/LOCATION/dlpJobs/JOB_ID",
"type": "INSPECT_JOB",
"state": "PENDING",
"inspectDetails": {
"requestedOptions": {
"snapshotInspectTemplate": {},
"jobConfig": {
"storageConfig": {
"bigQueryOptions": {
"tableReference": {
"projectId": "PROJECT_ID",
"datasetId": "BIGQUERY_DATASET_NAME",
"tableId": "BIGQUERY_TABLE_NAME"
}
}
},
"inspectConfig": {
"infoTypes": [
{
"name": "EMAIL_ADDRESS"
},
{
"name": "PERSON_NAME"
},
{
"name": "US_SOCIAL_SECURITY_NUMBER"
},
{
"name": "PHONE_NUMBER"
}
],
"minLikelihood": "UNLIKELY",
"limits": {
"maxFindingsPerRequest": 100
},
"includeQuote": true
},
"actions": [
{
"publishFindingsToDataplexCatalog": {}
}
]
}
},
"result": {}
},
"createTime": "2025-09-09T00:29:55.951374Z",
"lastModified": "2025-09-09T00:29:58.022967Z"
}
Pour savoir comment obtenir les résultats d'un job d'inspection à l'aide de l'API DLP, consultez Obtenir un job.
Exemples de requêtes de recherche
Cette section fournit des exemples de requêtes de recherche que vous pouvez utiliser dans Knowledge Catalog pour trouver des données dans votre organisation ou votre projet avec des valeurs d'aspect spécifiques.
Vous ne pouvez trouver que les données auxquelles vous avez accès. L'accès aux données est contrôlé par les autorisations IAM. Pour en savoir plus, consultez Rôles et autorisations pour afficher les aspects dans ce document.
Vous pouvez saisir ces exemples de requêtes dans le champ Rechercher de la page Rechercher de Knowledge Catalog.
Pour savoir comment formuler les requêtes, consultez Syntaxe de recherche pour Knowledge Catalog.
Rechercher les entrées de toutes les tables qui comportent l'aspect "Résultat du job Sensitive Data Protection"
aspect:sensitive-data-protection-job-result
Trouver les entrées des tables inspectées qui présentent des résultats
aspect:sensitive-data-protection-job-result.hasFindings=True
Rechercher les entrées des tables inspectées qui ne présentent aucun résultat
aspect:sensitive-data-protection-job-result.hasFindings=False
Trouver les entrées des tables qui ont été entièrement inspectées
La requête suivante renvoie les entrées des tables que Sensitive Data Protection a inspectées ligne par ligne.
aspect:sensitive-data-protection-job-result.isFullScan=True
Rechercher les entrées des tables qui n'ont pas été entièrement inspectées
La requête suivante renvoie les entrées des tables que Sensitive Data Protection a inspectées par échantillonnage.
aspect:sensitive-data-protection-job-result.isFullScan=False
Migrer vers l'action "Publier dans Dataplex Universal Catalog"
Pour migrer un déclencheur de job configuré pour utiliser l'action Publier dans Data Catalog obsolète, procédez comme suit :
- Modifiez le déclencheur de job configuré pour publier les résultats de l'inspection dans Data Catalog. Pour savoir comment ouvrir et modifier un déclencheur de job, consultez Mettre à jour un déclencheur de job existant.
- Dans la section Actions, désactivez Publier dans Data Catalog.
- Activez l'option Publier dans Dataplex Universal Catalog.
- Cliquez sur Enregistrer.