Résoudre des problèmes liés au profileur de données

Cette page vous explique comment résoudre les problèmes liés au profileur de données Cloud Data Loss Prevention.

Autorisations

Cette section répertorie les problèmes d'accès que vous pouvez rencontrer et fournit des suggestions pour les résoudre.

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, Cloud DLP 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

Cloud DLP relance régulièrement les tables 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, Cloud DLP 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 Cloud DLP 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, Cloud DLP 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 Cloud DLP tente de profiler une table que l'agent de service n'est pas autorisé à interroger. Cloud DLP 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 la CLI Google Cloud, installez et initialisez la CLI Google Cloud.

  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
    }
    

    Cloud DLP relance régulièrement les tables 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 survient lorsque Cloud DLP tente de publier des notifications sur un sujet Pub/Sub où l'agent de service ne dispose d'aucun accès en publication. Cloud DLP 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 à un agent de service au niveau du projet ou du sujet. Le rôle Éditeur Pub/Sub est un rôle qui dispose d'un accès en publication.

Modèles d'inspection

Cette section répertorie les problèmes que vous pouvez rencontrer avec les modèles d'inspection et fournit des suggestions pour les résoudre.

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 Cloud DLP tente de profiler les données qui ne résident pas dans la même région que le modèle d'inspection. Cloud DLP 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.

Cloud DLP relance régulièrement les tables de profilage qu'il n'a pas pu profiler.