Résoudre les problèmes liés au service de découverte

Cette page explique comment résoudre les problèmes liés au service de découverte de la protection des données sensibles. Pour en savoir plus sur le service de découverte, consultez la page Profils de données.

L'agent de service n'est pas autorisé à lire une colonne à accès contrôlé

Ce problème survient lors du profilage d'une table qui applique la sécurité au niveau des colonnes via des tags avec stratégie. Si l'agent de service n'est pas autorisé à accéder à la colonne "Limitée", la protection des données sensibles affiche l'erreur suivante:

Permission denied for DLP API service account 'SERVICE_AGENT_ID'
while accessing a BigQuery table. Access Denied: BigQuery BigQuery: User does
not have permission to access policy tag "POLICY_TAG_ID" on column FIELD_NAME.

Pour résoudre ce problème, sur la page IAM (Identity and Access Management), attribuez à votre agent de service le rôle Lecteur détaillé.

Accéder à IAM

La protection des données sensibles relance régulièrement le profilage des tables qu'elle n'a pas réussi à profiler.

Pour plus d'informations sur l'attribution d'un rôle, consultez la section Attribuer un seul rôle.

L'agent de service ne dispose pas d'un accès au profilage des données

Ce problème se produit après qu'un membre de votre organisation a créé une configuration d'analyse au niveau de l'organisation ou du dossier. Lorsque vous affichez les détails de la configuration de l'analyse, vous constatez que la valeur de l'état de l'analyse est active avec des erreurs. Lorsque vous affichez l'erreur, la protection des données sensibles affiche le message d'erreur suivant:

None of the driver projects (PROJECT_ID) have MISSING_PERMISSION
permission for organizations/ORGANIZATION_ID.

Cette erreur s'est produite, car la protection des données sensibles n'a pas pu attribuer automatiquement le rôle Pilote de profils de données de l'organisation DLP à votre agent de service lors de la création de votre configuration d'analyse. Le créateur de la configuration d'analyse ne dispose pas des autorisations nécessaires pour accorder l'accès au profilage des données. La protection des données sensibles n'a donc pas pu le faire en son nom.

Pour résoudre ce problème, consultez la section Accorder l'accès au profilage des données à un agent de service.

Le compte de service n'est pas autorisé à interroger une table

Ce problème se produit lorsque la protection des données sensibles tente de profiler une table que l'agent de service n'est pas autorisé à interroger. La protection des données sensibles affiche l'erreur suivante:

Permission denied error: Permission denied for DLP API service account 'SERVICE_AGENT_ID'
while accessing BigQuery table. Access Denied: Table TABLE: User does not have
permission to query table TABLE. Permission denied for DLP API service account
'SERVICE_AGENT_ID' while accessing BigQuery table. Access Denied: Table TABLE:
User does not have permission to query TABLE. [TIMESTAMP]

Pour résoudre ce problème, procédez comme suit :

  1. Vérifiez que la table existe toujours. Si la table existe, procédez comme suit :

  2. Activez Cloud Shell.

    Activer Cloud Shell

    Si vous êtes invité à autoriser Cloud Shell, cliquez sur Autoriser.

    Si vous souhaitez utiliser l'outil de ligne de commande bq à partir de Google Cloud CLI, installez et initialisez la Google Cloud CLI.

  3. Obtenez la stratégie IAM actuelle pour la table et imprimez-la dans stdout :

    bq get-iam-policy TABLE
    

    Remplacez TABLE par le nom complet de la ressource BigQuery, au format PROJECT_ID:DATASET_ID.TABLE_ID (par exemple, project-id:dataset-id.table-id).

  4. Attribuez le rôle Agent de service de l'API DLP (roles/dlp.serviceAgent) à l'agent de service :

    bq add-iam-policy-binding --member=serviceAccount:SERVICE_AGENT_ID \
        --role=roles/dlp.serviceAgent TABLE
    

    Remplacez les éléments suivants :

    • SERVICE_AGENT_ID : ID de l'agent de service qui doit interroger la table (par exemple, service-0123456789@dlp-api.iam.gserviceaccount.com)
    • TABLE : nom complet de la ressource de la table BigQuery, au format PROJECT_ID:DATASET_ID.TABLE_ID par exemple, project-id:dataset-id.table-id.

      Le résultat ressemble à ce qui suit :

    Successfully added member 'SERVICE_AGENT_ID' to role 'roles/dlp.serviceAgent' in IAM policy for table 'TABLE':
    
    {
     "bindings": [
       {
         "members": [
           "serviceAccount:SERVICE_AGENT_ID"
         ],
         "role": "roles/dlp.serviceAgent"
       }
     ],
     "etag": "BwXNAPbVq+A=",
     "version": 1
    }
    

    La protection des données sensibles relance régulièrement le profilage des tables qu'elle n'a pas réussi à profiler.

Le compte de service ne dispose pas des autorisations nécessaires pour publier dans un sujet Pub/Sub

Ce problème se produit lorsque la protection des données sensibles tente de publier des notifications dans un sujet Pub/Sub pour lequel l'agent de service ne dispose d'aucun accès en publication. La protection des données sensibles affiche l'erreur suivante:

Permission missing to publish notifications on Cloud Pub/Sub topic 'TOPIC_NAME'.
The DLP API service account 'SERVICE_AGENT_ID' must must have at least the Pub/Sub Publisher role.

Pour résoudre ce problème, accordez l'accès en publication à votre agent de service, au niveau du projet ou du sujet. Éditeur Pub/Sub est un exemple de rôle disposant d'un accès en publication.

En cas de problèmes de configuration ou d'autorisation avec le sujet Pub/Sub, le service de protection des données sensibles retente d'envoyer la notification Pub/Sub pendant deux semaines maximum. Après deux semaines, la notification est supprimée.

Le modèle d'inspection ne peut pas être utilisé pour profiler des données dans une région différente

Ce problème survient lorsque la protection des données sensibles tente de profiler des données qui ne se trouvent pas dans la même région que celle où se trouve le modèle d'inspection. La protection des données sensibles affiche l'erreur suivante:

Data in region DATA_REGION cannot be profiled using template in region
TEMPLATE_REGION. Regional template can only be used to profile data
in the same region. If profiling data in multiple regions, use a global template.

Dans ce message d'erreur, DATA_REGION correspond à la région où se trouvent les données, et TEMPLATE_REGION à la région où se trouve le modèle d'inspection.

Pour résoudre ce problème, vous pouvez copier le modèle spécifique à la région dans la région global :

  1. Copiez le modèle d'inspection dans la région global.

  2. Sur la page Détails du modèle d'inspection, copiez le nom complet de la ressource du modèle. Il a le format suivant :

    projects/PROJECT_ID/locations/REGION/inspectTemplates/TEMPLATE_ID
  3. Modifiez la configuration d'analyse et saisissez le nom de ressource complet du nouveau modèle d'inspection.

  4. Cliquez sur Enregistrer.

La protection des données sensibles relance régulièrement le profilage des tables qu'elle n'a pas réussi à profiler.

La protection des données sensibles a tenté de profiler une table non compatible

Ce problème se produit lorsque la protection des données sensibles tente de profiler une table non compatible. Pour cette table, vous obtenez toujours un profil partiel contenant les métadonnées de la table. Toutefois, le profil partiel affiche l'erreur suivante:

Unimplemented error: Table of type `TABLE_TYPE` is not currently supported for inspection. [DATE_TIME].

Si vous ne souhaitez pas obtenir de profils partiels ni d'erreurs pour les tables non compatibles, procédez comme suit:

  1. Modifiez la configuration de l'analyse.
  2. À l'étape Gérer les planifications, cliquez sur Modifier la planification.
  3. Dans le volet qui s'affiche, cliquez sur l'onglet Conditions.
  4. Dans la section Tables à profiler, cliquez sur Profiler les tables compatibles.

Pour en savoir plus, consultez la section Gérer les planifications.