Anonymisation

La protection des données sensibles utilise des types d'informations (ou infoTypes) pour définir ce qu'elle analyse. Un infoType est un type de données sensibles, par exemple un nom, une adresse e-mail, un numéro de téléphone, un numéro d'identification, un numéro de carte de crédit, etc.

Chaque infoType défini dans Sensitive Data Protection possède un détecteur correspondant. Sensitive Data Protection utilise des détecteurs d'infoTypes dans la configuration de ses analyses pour déterminer ce qu'il faut inspecter et comment transformer les résultats. Les noms des infoTypes sont également utilisés lorsque vous affichez des résultats d'analyse ou créez des rapports.

Cette rubrique décrit en détail les infoTypes et les détecteurs d'infoTypes, et explique comment utiliser les détecteurs d'infoTypes lors de l'analyse de contenu à la recherche de données sensibles à l'aide de Sensitive Data Protection.

Quand utiliser l'anonymisation

Voici quelques cas d'utilisation courants :

  • Partager des données avec des partenaires d'analyse externes : tokenisez ou pseudonymisez les identifiants directs (tels que les noms, les numéros d'identification nationaux et les numéros de compte) afin que les partenaires tiers et les chercheurs puissent analyser les ensembles de données sans accéder à l'identité personnelle en texte brut.
  • Préparer des ensembles de données de production dans des environnements hors production : masquez ou généralisez les attributs client sensibles avant de répliquer les bases de données de production dans des environnements de développement, de test ou d'entraînement.
  • Respectez les obligations réglementaires en matière de confidentialité : masquez les informations personnelles sensibles et les données de santé protégées dans les dépôts BigQuery et Cloud Storage pour respecter les normes de conformité telles que le RGPD et la loi HIPAA.
  • Nettoyer les champs sensibles dans les pipelines d'événements de flux de données : transformez les enregistrements sensibles en temps réel à mesure que les événements transitent par Pub/Sub avant de conserver les données dans des entrepôts ou des bases de données d'applications en aval.
  • Maintenir l'intégrité référentielle entre les ensembles de données relationnels : utilisez des transformations cryptographiques déterministes pour permettre des jointures sécurisées et des analyses de tables croisées entre des systèmes distincts sans exposer les identifiants sous-jacents.

Spécifier des détecteurs d'infoTypes

Lorsque vous configurez Sensitive Data Protection pour analyser votre contenu, vous incluez les détecteurs d'infoTypes à utiliser dans la configuration de l'analyse.

Par exemple, le code JSON suivant illustre une requête d'analyse simple envoyée à l'API DLP. Notez que le détecteur PHONE_NUMBER est spécifié dans inspectConfig, ce qui indique à Sensitive Data Protection d'analyser la chaîne donnée pour trouver un numéro de téléphone.

POST https://dlp.googleapis.com/v2/projects/[PROJECT_ID]/content:inspect?key={YOUR_API_KEY}

{
  "item":{
    "value":"My phone number is (415) 555-0890"
  },
  "inspectConfig":{
    "includeQuote":true,
    "minLikelihood":"POSSIBLE",
    "infoTypes":{
      "name":"PHONE_NUMBER"
    }
  }
}

Cette requête renvoie le résultat suivant :

{
  "result":{
    "findings":[
      {
        "quote":"(415) 555-0890",
        "infoType":{
          "name":"PHONE_NUMBER"
        },
        "likelihood":"VERY_LIKELY",
        "location":{
          "byteRange":{
            "start":"19",
            "end":"33"
          },
          "codepointRange":{
            "start":"19",
            "end":"33"
          }
        },
        "createTime":"2018-10-29T23:46:34.535Z"
      }
    ]
  }
}

Spécifiez toujours des infoTypes dans votre configuration d'analyse. Si vous ne spécifiez aucun infoType, Sensitive Data Protection utilise une liste d'infoTypes par défaut. Selon la quantité de contenu à analyser, la recherche des infoTypes par défaut peut être chronophage et coûteuse.

Si vous souhaitez en savoir plus sur l'utilisation des détecteurs d'infoTypes pour analyser votre contenu, consultez l'un des guides pratiques relatifs à l'inspection, à l'effacement ou à l'anonymisation.

Types de détecteurs d'infoTypes

Les détecteurs de types d'informations (ou "infoTypes") sont les mécanismes utilisés par Sensitive Data Protection pour rechercher des données sensibles.

Sensitive Data Protection inclut plusieurs types de détecteurs d'infoTypes, qui sont tous résumés ici :

  • Les détecteurs d'infoTypes intégrés sont intégrés à Sensitive Data Protection. Ils incluent des détecteurs pour les types de données sensibles spécifiques à un pays ou à une région, ainsi que pour les types de données applicables à l'échelle mondiale.
  • Les détecteurs d'infoTypes personnalisés sont des détecteurs que vous créez vous-même. Il existe trois types de détecteurs d'infoTypes personnalisés :
    • Les détecteurs de dictionnaires personnalisés standards sont de simples listes de mots que Sensitive Data Protection met en correspondance. Utilisez des détecteurs de dictionnaires personnalisés standards lorsque vous avez une liste qui contient au maximum plusieurs dizaines de milliers de mots ou d'expressions. Les détecteurs de dictionnaires personnalisés standards sont recommandés si vous pensez que votre liste de mots ne changera pas de manière significative.
    • Les détecteurs de dictionnaires personnalisés stockés sont générés par Sensitive Data Protection à l'aide de longues listes de mots ou d'expressions stockées dans Cloud Storage ou BigQuery. Utilisez des détecteurs de dictionnaires personnalisés stockés lorsque vous avez une longue liste de mots ou d'expressions, pouvant atteindre plusieurs dizaines de millions d'éléments.
    • Les détecteurs d'expressions régulières (regex) permettent à Sensitive Data Protection de détecter les correspondances en fonction d'un modèle d'expression régulière.

Pour affiner les résultats d'analyse, vous pouvez créer des règles d'inspection.

Détecteurs d'infoTypes intégrés

Les détecteurs d'infoTypes intégrés sont intégrés à Sensitive Data Protection et incluent des détecteurs pour les types de données sensibles spécifiques à un pays ou à une région, tels que le Numéro d'Inscription au Répertoire (NIR) (FRANCE_NIR), le numéro de permis de conduire britannique (UK_DRIVERS_LICENSE_NUMBER) et le numéro de sécurité sociale américain (US_SOCIAL_SECURITY_NUMBER). Ils incluent également des types de données applicables à l'échelle mondiale, tels que le nom d'une personne (PERSON_NAME), les numéros de téléphone (PHONE_NUMBER), les adresses e-mail (EMAIL_ADDRESS) et les numéros de carte de crédit (CREDIT_CARD_NUMBER). Pour détecter le contenu correspondant aux infoTypes, Sensitive Data Protection exploite diverses techniques, y compris la correspondance de modèles, les sommes de contrôle, le machine learning, l'analyse de contexte, etc.

La liste des détecteurs d'infoTypes intégrés est constamment mise à jour. Pour obtenir la liste complète des détecteurs d'infoTypes intégrés actuellement acceptés, consultez la documentation de référence sur les détecteurs d'infoTypes.

Vous pouvez également afficher la liste complète de tous les détecteurs d'infoTypes intégrés en appelant la méthode infoTypes.list de Sensitive Data Protection.

Détecteurs d'infoTypes personnalisés

Il existe trois types de détecteurs d'infoTypes personnalisés :

Pour affiner les résultats d'analyse, vous pouvez créer des règles d'inspection.

Détecteurs de dictionnaires personnalisés standards

Servez-vous des détecteurs de dictionnaires personnalisés standards pour rechercher des correspondances avec une liste de mots ou d'expressions relativement courte (jusqu'à plusieurs dizaines de milliers d'éléments). Un dictionnaire personnalisé standard peut agir comme son propre détecteur unique.

Les détecteurs de dictionnaire personnalisés sont utiles lorsque vous souhaitez baser l'analyse sur une liste de mots ou d'expressions pour lesquels une expression régulière ou un détecteur intégré ne trouvera pas facilement de correspondance. Par exemple, supposons que vous souhaitiez rechercher des salles de conférence à partir du nom qui leur est attribué (basé, par exemple, sur des noms d'États ou de régions, de monuments, de personnages de fiction, etc.) plutôt qu'à partir de leur numéro de salle. Vous pouvez créer un détecteur de dictionnaire personnalisé standard contenant la liste de ces noms de salles. Sensitive Data Protection peut analyser votre contenu pour chacun des noms de pièce et renvoyer une correspondance lorsqu'il en rencontre un dans le contexte. Pour en savoir plus sur la façon dont Sensitive Data Protection met en correspondance les mots et expressions du dictionnaire, consultez la section Spécificités de la correspondance de dictionnaire de la page Créer un détecteur de dictionnaire personnalisé standard.

Pour en savoir plus sur le fonctionnement des détecteurs d'infoTypes personnalisés de dictionnaire standard, ainsi que sur des exemples en action, consultez la page Créer un détecteur de dictionnaire personnalisé standard.

Détecteurs de dictionnaires personnalisés stockés

Utilisez des détecteurs de dictionnaire personnalisés stockés lorsque vous avez plus que quelques mots ou expressions à analyser, ou si votre liste de mots ou d'expressions change fréquemment. Les détecteurs de dictionnaires personnalisés stockés permettent d'identifier des correspondances avec des listes allant jusqu'à plusieurs dizaines de millions de mots ou d'expressions.

Les détecteurs de dictionnaires personnalisés stockés, de par leur nature même de très grands détecteurs personnalisés, sont créés différemment des détecteurs personnalisés à base d'expressions régulières et des détecteurs de dictionnaires personnalisés standards. Chaque dictionnaire personnalisé stocké possède deux composants :

  • Une liste d'expressions que vous créez et définissez. Cette liste est stockée sous forme de fichier texte dans Cloud Storage ou de colonne dans une table BigQuery.
  • Les fichiers de dictionnaire générés, qui sont créés par Sensitive Data Protection en fonction de votre liste d'expressions. Les fichiers de dictionnaire sont stockés dans Cloud Storage et comprennent une copie des données sources (les expressions) ainsi que des filtres de Bloom qui facilitent la recherche et la correspondance. Vous ne pouvez pas modifier ces fichiers directement.

Une fois que vous avez créé une liste de mots, puis utilisé Sensitive Data Protection pour générer un dictionnaire personnalisé, vous lancez ou planifiez une analyse à l'aide d'un détecteur de dictionnaire personnalisé stocké, de la même manière que pour les autres détecteurs d'infoTypes.

Pour en savoir plus sur le fonctionnement des détecteurs de dictionnaires personnalisés stockés et pour obtenir des exemples concrets, consultez la page Créer un détecteur de dictionnaire personnalisé stocké.

Expressions régulières

Un détecteur d'infoTypes personnalisé d'expression régulière (regex) vous permet de créer vos propres détecteurs d'infoTypes qui permettent à Sensitive Data Protection de détecter les correspondances en fonction d'un modèle d'expression régulière. Supposons, par exemple, que vous ayez des numéros de dossiers médicaux au format ###-#-#####. Vous pouvez définir un motif d'expression régulière comme ci-dessous :

[1-9]{3}-[1-9]{1}-[1-9]{5}

Sensitive Data Protection mettrait alors en correspondance des éléments comme celui-ci :

123-4-56789

Vous pouvez également spécifier une probabilité à attribuer à chaque correspondance d'infoType personnalisé. Autrement dit, lorsque Sensitive Data Protection correspond à la séquence que vous spécifiez, il attribue la probabilité que vous avez indiquée. Cette fonctionnalité est utile, car si votre expression régulière personnalisée définit une séquence suffisamment courante pour correspondre facilement à une autre séquence aléatoire, vous ne souhaitez pas que Sensitive Data Protection étiquette chaque correspondance comme VERY_LIKELY. Cela pourrait en effet affecter la fiabilité des résultats d'analyse et entraîner la suppression d'informations par erreur.

Pour en savoir plus sur les détecteurs d'infoTypes personnalisés à base d'expressions régulières et pour obtenir des exemples concrets, consultez la page Créer un détecteur d'expression régulière personnalisé.