Quels outils existe-t-il pour le masquage des données? (MySQL, Linux) [fermé]


14

Je recherche des outils de masquage de données (idéalement gratuits et open source). En existe-t-il?

Remarque: cette question connexe traite des outils pour générer des données de test, mais dans cette question, je suis plus intéressé à commencer par des données réelles et à les masquer pour les utiliser dans le test sans perdre de relations spéciales qui les rendent intéressantes à des fins de test. Les données générées conviennent pour certains tests, mais les données réelles soulèveront des problèmes auxquels vous n'avez jamais pensé. Outil pour générer de grands ensembles de données de données de test

Réponses:


9

Je serais très surpris s'il existait un outil générique pour cela - comment pourrait-il «savoir» ce qui est des données sensibles et ce qui ne l'est pas? Par exemple, il devra examiner toutes vos données et reconnaître tous les formats possibles de numéro de carte de crédit, numéro de téléphone, code postal, adresse e-mail et toutes autres données considérées comme sensibles. Il devrait également être intelligent dans votre schéma - par exemple, s'il doit réécrire toutes les adresses e-mail des clients dans "nobody@company.com" - ou si une partie de votre base de données, applications ou autres outils suppose que l'adresse e-mail d'un client (ou SSN ou quoi que ce soit) est unique? Ou avez-vous une partie de l'application qui totalise les numéros de carte de crédit, qui se briserait si vous les réinitialisiez tous à 0000 0000 0000 0000? Ou votre système de téléphonie suppose-t-il qu'un client

Fondamentalement, configurer n'importe quel outil pour le faire sera autant ou plus de travail que de simplement écrire votre propre script, en utilisant votre connaissance de l'application. Sur mon site, nous avons simplement fait en sorte que toute personne qui ajoute une colonne avec de telles données dans le script mette à jour en même temps l'anonymat, après un premier audit pour trouver toutes ces colonnes et écrire la version 1.


1
Je sais qu'il existe des outils commerciaux, car dans un lieu de travail précédent, il y avait une initiative (ratée) d'en utiliser un pour nos dbs Oracle. (Je n'étais pas impliqué dans ce projet, donc je ne connais pas les raisons de l'échec. Je soupçonne que la configuration d'un outil de masquage des données pour une base de données héritée sera cependant une tâche très fastidieuse, comme vous le suggérez).
testerab le

3
Oh, je m'attends à ce que quelqu'un vous vende quelque chose qui prétend être ça, mais comme je le dis, le configurer sera plus de travail que d'écrire le vôtre en SQL car vous devrez d'abord apprendre leur hokey DSL!
Gaius

5

Si votre base de données est petite, a un modèle de données simple et est bien comprise par les administrateurs de base de données actuels - le script «pourrait» être la réponse. Cependant, l'effort (et le coût) pour analyser et masquer manuellement les bases de données typiques peut devenir incontrôlable assez rapidement à mesure que les exigences changent, que des fonctionnalités sont ajoutées et que les développeurs / DBA vont et viennent.

Bien que je ne connaisse aucun produit de masquage de données open source, il existe des offres commerciales disponibles qui sont raisonnablement complètes, relativement faciles à utiliser et peuvent être étonnamment raisonnables en termes de coûts. Beaucoup d'entre eux incluent une capacité de découverte prête à l'emploi pour identifier et classer les données sensibles (SSN, cartes de crédit, numéros de téléphone) ainsi que des fonctionnalités pour maintenir les sommes de contrôle, le formatage des adresses e-mail, le regroupement des données, etc. afin que les données masquées semble et se sent réel.

Mais vous n'avez pas à croire mon mot (certes biaisé). Demandez aux analystes de l'industrie tels que Gartner ou Forrester qui ont un certain nombre de rapports impartiaux disponibles sur le masquage qui peuvent aider.

J'espère que ces commentaires vous encourageront à envisager d'explorer des produits commerciaux ainsi que le développement de scripts internes. À la fin de la journée, la chose la plus importante est de protéger les données sensibles que beaucoup d'entre nous voient jour après jour que nous n'avons vraiment pas besoin de voir pour faire notre travail - nous mettre ainsi que les personnes dont les données que nous détenons.

Kevin Hillier, spécialiste principal de l'intégration, Camouflage Software Inc.


1
Je me rends compte que vous ne voulez pas apparaître comme vendant votre propre produit, mais il serait utile que vous puissiez nommer quelques produits commerciaux ou indiquer des conseils spécifiques?
testerab le

1
Je comprends que vous travaillez pour cette entreprise et que vous souhaitiez probablement recommander votre propre produit, et je ne suis pas contre cela, mais à cause de la signature, cela ressemble à une publicité en ligne chic, plutôt que "Je sais de quoi je parle , parce que c'est ce que je fais "... je suis plus de la persuasion de" utiliser bla bla bla (divulgation complète: je travaille sur ce produit) parce que bla bla bla "et ne mettez pas votre nom à la fin. Si nous voulons vos informations personnelles, nous pouvons cliquer sur votre profil, lire cette signature et cliquer sur le lien.
jcolebrand

5

Je n'ai jamais vu un tel élément, mais après avoir travaillé avec quelques ensembles de données sensibles à mon époque, la principale chose à brouiller est l'identité des personnes ou les informations d'identification personnelle. Cela ne devrait apparaître qu'à quelques endroits de la base de données.

Votre opération de masquage doit conserver les propriétés statistiques et les relations des données, et doit probablement conserver les codes de référence réels (ou au moins une sorte de mécanisme de traduction contrôlé) afin que vous puissiez les rapprocher des données réelles.

Ce genre de chose peut être réalisé en obtenant une liste distincte des noms dans les champs et en la remplaçant par quelque chose comme FirstNameXXXX (où XXXX est un numéro de séquence, un pour chaque valeur distincte). Les numéros de carte de crédit et les informations similaires qui pourraient être utilisées pour le vol d'identité sont très probablement un non-non dans un environnement de développement, mais vous n'en avez besoin que si vous testez des systèmes de traitement des paiements - généralement, le fournisseur vous donnera des codes spéciaux pour les comptes fictifs.

Il n'est pas particulièrement difficile d'écrire des procédures d'anonymisation de ce type, mais vous devrez convenir exactement de ce qui doit être anonymisé avec l'entreprise. Si nécessaire, parcourez la base de données champ par champ. Demander oui / non vous donnera de faux positifs dont vous ne voulez pas. Demandez au représentant commercial d'expliquer pourquoi, ou les conséquences ou les implications réglementaires de ne pas anonymiser des données particulières.


3

J'ai eu la même tâche il y a quelques semaines. nous avons évalué certains systèmes logiciels, mais la plupart d'entre eux ne concernent qu'un seul type de base de données, par exemple oracle et ils sont souvent très compliqués à utiliser ... donc euh ce n'est pas la meilleure chose à évaluer. Cela nous a pris des semaines.

Nous avons décidé d'acheter la version professionnelle de la suite de masquage de données car c'était la plus facile à utiliser. Il a également des possibilités intéressantes pour masquer les données, par exemple, vous pouvez changer les adresses e-mail en vraies, par exemple ... @ siemens.com à mike.miller@seimsen.com.

Vous pouvez l'essayer gratuitement pour environ 500 (?) Enregistrements pour autant que je m'en souvienne.

Voici le lien http://www.data-masking-tool.com/


1
Juste un point de données: au moment de la rédaction de cet article, l'outil de masquage des données fonctionne à peine 1000 $.
Michael Teper

2

Ma façon de faire:

  1. Créer une nouvelle base de données avec uniquement des droits d'affichage et de sélection pour les utilisateurs
  2. Créer des vues sur des tables qui devraient être visibles dans d'autres bases de données
  3. Masquer les colonnes qui doivent être masquées par: repeat ('*', char_length ( column to be masked))

2

J'ai commencé dans cette voie il y a plusieurs années et j'ai depuis construit un cabinet de conseil autour de cette pratique.

Je suppose que le but est de créer des données de test à utiliser dans des environnements de test où les personnes qui accèdent aux données n'ont pas le droit de visualiser les informations de production.

La première chose à établir est exactement quels éléments de données vous devez masquer et pour ce faire, il est préférable de commencer avec un outil de découverte de données tel que Schema Spy (Open source) et vous aurez besoin du pilote jdbc approprié pour cette tâche, mais il est une étape très utile dans le processus.

Talend Open Studio est l'un des meilleurs outils que j'ai utilisés ces dernières années pour effectuer certaines des fonctions ETL et vous pourrez également faire quelques exercices de masquage de base en remplaçant les valeurs par un ou aléatoire. Rechercher / remplacer - pour maintenir la cohérence - en utilisant le composant de carte.

Mais si vous cherchez un véritable outil de masquage de données, je n'ai pas trouvé d'outil open source approprié. Si vous avez un budget très modéré pour les outils, je suggérerais Data Masker mais vous devrez effectuer une importation et une exportation via MS SQL ou Oracle car il se connecte uniquement via ces protocoles.

Consultez http://www.datakitchen.com.au/2012-08-14-15-04-20/data-masking/data-masker-toolset pour plus d'informations sur le masquage des données, la méthodologie de masquage des données, la découverte des données et les données de test la gestion. Il existe également un blog utile sur http://www.dataobfuscation.com.au


1

Il existe un outil disponible sur le marché d'Informatica qui s'appelle Informatica ILM (TDM). Cela utilise PowerCenter comme backone pour les données ETL et de masque avec différentes options de masquage disponibles. Vous avez besoin d'un analyste de données ou d'une PME capable de comprendre comment les données doivent être masquées. L'outil lui-même ne fournit pas d'informations sur les champs à masquer, mais il existe un algorithme ou une procédure ou un processus interne pour identifier les champs de données sensibles tels que le nom, les colonnes d'identification avec numéro, la carte de crédit, le numéro SSN, le numéro de compte, etc.


De plus, Informatica ILM TDM permet de générer un sous-ensemble de données. Vous pouvez donc sous-définir les données et les masquer ou Masquer toutes les données, puis les sous-définir selon les besoins de l'entreprise.
Awadhesh Yona

1

Cette année, j'ai l'opportunité de travailler avec IBM Optim qui prétend faire ce qui est demandé. N'est pas gratuit, mais cela fonctionne bien.


1

Celui que je préfère est IRI FieldShield ( https://www.iri.com/products/fieldshield ) en termes de polyvalence (la plupart des fonctions de masquage des données), de vitesse (moteur CoSort pour le mouvement des données à l'intérieur) et d'ergonomie (simples tâches 4GL pris en charge dans son interface graphique Eclipse avec des tonnes de connexions de bases de données et de fichiers). En termes de prix, il s'agit d'environ la moitié d'IBM et d'Informatica, bien que également disponible dans une suite d'intégration de données plus grande pour la transformation, la migration et la BI de données volumineuses. Il n'est donc pas gratuit non plus, mais utilise une source ouverte (l'EDI, et peut utiliser OpenSSL et GPG) et les scripts s'exécutent sur Windows, Linux et d'autres versions Unix.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.