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 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 restreinte, 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

Sensitive Data Protection relance régulièrement les données de profilage qu'il n'a pas pu 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 la configuration d'analyse. Le créateur de la configuration d'analyse ne dispose pas des autorisations permettant d'accorder l'accès au profilage des données, la protection des données sensibles n'a donc pas pu le faire pour lui.

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 survient 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 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.)
    • 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
    }
    

    Sensitive Data Protection relance régulièrement les données de profilage qu'il n'a pas pu profiler.

Le compte de service n'est pas autorisé à 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 auquel l'agent de service n'a pas accès. 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 un accès à la publication, au niveau d'un projet ou d'un sujet, à votre agent de service. Le rôle Éditeur Pub/Sub est un exemple de rôle disposant d'un accès de publication.

En cas de problèmes de configuration ou d'autorisation avec le sujet Pub/Sub, la protection des données sensibles réessaie d'envoyer la notification Pub/Sub pendant deux semaines maximum. Au bout de 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 résident pas dans la même région que 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.

Sensitive Data Protection relance régulièrement les données de profilage qu'il n'a pas pu profiler.

La protection des données sensibles a tenté de créer un profil pour une table non prise en charge

Ce problème survient lorsque Sensitive Data Protection 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 d'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.

Le rapport Looker prédéfini ne se charge pas correctement

Consultez Résoudre les erreurs à l'aide du rapport prédéfini.

Consultez la section Résoudre les erreurs dans la documentation sur le contrôle de l'accès IAM aux ressources en fonction de la sensibilité des données.