Welche Tools gibt es zur Datenmaskierung? (MySQL, Linux) [geschlossen]


14

Ich suche nach (im Idealfall kostenlosen, Open-Source-) Datenmaskierungs-Tools. Gibt es solche?

Hinweis: In dieser verwandten Frage geht es um Tools zum Generieren von Testdaten. In dieser Frage geht es mir jedoch eher darum, mit echten Daten zu beginnen und sie für die Verwendung im Test zu maskieren, ohne dass spezielle Beziehungen verloren gehen, die sie für Testzwecke interessant machen. Generierte Daten sind für einige Testzwecke in Ordnung, aber reale Daten werfen Probleme auf, an die Sie nie gedacht haben. Tool zum Generieren großer Datensätze von Testdaten

Antworten:


9

Ich wäre sehr überrascht, wenn es ein generisches Tool dafür gäbe - wie würde es "wissen", was sensible Daten sind und was nicht? Zum Beispiel müsste es alle Ihre Daten untersuchen und alle möglichen Formate von Kreditkartennummer, Telefonnummer, Postleitzahl, E-Mail-Adresse und allen anderen Daten erkennen, die als vertraulich gelten. Es müsste auch Ihr Schema genau kennen - z. B. sollten alle Kunden-E-Mail-Adressen in "nobody@company.com" umgeschrieben werden - oder ein Teil Ihrer Datenbank, Ihrer Anwendungen oder anderer Tools muss davon ausgehen, dass die E-Mail-Adresse eines Kunden (oder die SSN oder die E-Mail-Adresse eines Kunden) korrekt ist was auch immer) ist einzigartig? Oder haben Sie einen Teil der Anwendung, der Kreditkartennummern prüft, der sich aufheben würde, wenn Sie alle auf 0000 0000 0000 0000 zurücksetzen? Oder geht Ihr Telefoniesystem davon aus, dass ein Kunde

Grundsätzlich ist die Konfiguration eines Tools für diese Aufgabe mindestens genauso aufwändig wie das Schreiben eines eigenen Skripts unter Verwendung Ihrer Anwendungskenntnisse. Auf meiner Website haben wir einfach festgelegt, dass jeder, der eine Spalte mit solchen Daten in das Skript einfügt, das Skript aktualisiert, um es gleichzeitig zu anonymisieren, und nach einer ersten Überprüfung alle diese Spalten zu finden und Version 1 zu schreiben.


1
Ich weiß, dass es kommerzielle Tools gibt, da es an einem früheren Arbeitsplatz eine (fehlgeschlagene) Initiative gab, eine für unsere Oracle-Datenbank zu verwenden. (Ich war an diesem Projekt nicht beteiligt, daher kenne ich die Gründe für das Scheitern nicht. Ich vermute, dass das Einrichten eines Datenmaskierungs-Tools für eine ältere Datenbank eine sehr mühsame Aufgabe sein wird, wie Sie vorschlagen).
Testerab

3
Oh, ich gehe davon aus, dass Ihnen jemand etwas verkaufen wird , von dem behauptet wird , dass es das ist, aber wie ich schon sagte, es ist mehr Arbeit, es zu konfigurieren, als es in SQL selbst zu schreiben, denn Sie müssen zuerst das hokey DSL lernen!
Gaius

5

Wenn Ihre Datenbank winzig ist, ein einfaches Datenmodell aufweist und von aktuellen Datenbankadministratoren gut verstanden wird, ist die Skripterstellung möglicherweise die Antwort. Der Aufwand (und die Kosten) für die manuelle Analyse und Maskierung typischer Datenbanken gehen jedoch schnell verloren, wenn sich die Anforderungen ändern, Funktionen hinzugefügt werden und Entwickler / Datenbankadministratoren kommen und gehen.

Obwohl mir keine Open-Source-Produkte zur Datenmaskierung bekannt sind, gibt es kommerzielle Angebote, die relativ umfassend, relativ einfach zu bedienen und in Bezug auf die Kosten möglicherweise überraschend vernünftig sind. Viele von ihnen verfügen über eine sofort einsatzbereite Erkennungsfunktion zum Identifizieren und Klassifizieren vertraulicher Daten (SSN, Kreditkarten, Telefonnummern) sowie über Funktionen zum Verwalten der Prüfsummen, der E-Mail-Adressformatierung, der Datengruppierung usw., um Daten zu maskieren sieht aus und fühlt sich echt an.

Aber Sie müssen nicht mein (zugegebenermaßen voreingenommenes) Wort dafür nehmen. Fragen Sie die Branchenanalysten wie Gartner oder Forrester, die eine Reihe unvoreingenommener Berichte zur Maskierung zur Verfügung haben, die möglicherweise Abhilfe schaffen.

Hoffentlich ermutigen Sie diese Kommentare dazu, kommerzielle Produkte sowie die Entwicklung interner Skripte in Betracht zu ziehen. Letztendlich ist es das Wichtigste, die sensiblen Daten zu schützen, die viele von uns Tag für Tag sehen und die wir wirklich nicht brauchen, um unsere Arbeit zu erledigen - uns und die Menschen, deren Personal Daten, die wir in Gefahr halten.

Kevin Hillier, Senior Integration Specialist bei Camouflage Software Inc.


1
Mir ist klar, dass Sie Ihr eigenes Produkt nicht verkaufen wollen, aber es wäre nützlich, wenn Sie ein paar kommerzielle Produkte nennen oder auf einen bestimmten Rat hinweisen könnten.
Testerab

1
Ich verstehe, dass Sie für dieses Unternehmen arbeiten und dass Sie wahrscheinlich Ihr eigenes Produkt empfehlen möchten und nicht dagegen sind, aber aufgrund des Sig sieht es wie eine schicke Inline-Anzeige aus, anstatt "Ich weiß, wovon ich spreche , weil es das ist, was ich tue "... ich bin eher der Überzeugung von" benutze bla bla bla (Vollständige Offenlegung: Ich arbeite an diesem Produkt), weil bla bla "und schreibe deinen Namen nicht ans Ende. Wenn wir Ihre persönlichen Daten haben möchten, können wir auf Ihr Profil klicken und dieses Sig lesen und auf den dortigen Link klicken.
Jcolebrand

5

Ich habe noch nie einen solchen Gegenstand gesehen, aber nachdem ich in meiner Zeit mit ein paar vertraulichen Datensätzen gearbeitet habe, ist die Hauptsache, dass die Identität der Menschen oder die persönlichen Informationen, die sie identifizieren, verschlüsselt werden müssen. Dies sollte nur an wenigen Stellen in der Datenbank auftreten.

Ihre Maskierungsoperation sollte die statistischen Eigenschaften und Beziehungen der Daten beibehalten und muss möglicherweise die tatsächlichen Referenzcodes (oder zumindest einen kontrollierten Übersetzungsmechanismus) beibehalten, damit Sie sie mit den tatsächlichen Daten abgleichen können.

Dies kann erreicht werden, indem eine eindeutige Liste der Namen in den Feldern abgerufen und durch einen Namen wie FirstNameXXXX ersetzt wird (wobei XXXX eine Folgenummer ist, eine für jeden eindeutigen Wert). Kreditkartennummern und ähnliche Informationen, die für Identitätsdiebstahl verwendet werden könnten, sind in einer Entwicklungsumgebung mit ziemlicher Wahrscheinlichkeit ein No-No. Sie benötigen jedoch nur echte, wenn Sie Zahlungsverarbeitungssysteme testen. In der Regel erhalten Sie vom Anbieter spezielle Codes für Dummy-Konten.

Es ist nicht besonders schwierig, Anonymisierungsverfahren dieser Art zu schreiben, aber Sie müssen genau vereinbaren, was mit dem Unternehmen anonymisiert werden muss. Gehen Sie bei Bedarf die Datenbank Feld für Feld durch. Wenn Sie Ja / Nein fragen, erhalten Sie falsche Positivmeldungen, die Sie nicht möchten. Bitten Sie den Unternehmensvertreter, zu erklären, warum oder welche Konsequenzen oder rechtlichen Auswirkungen es hat, bestimmte Daten nicht zu anonymisieren.


3

Ich hatte vor ein paar Wochen die gleiche Aufgabe. Wir haben einige Softwaresysteme evaluiert, aber die meisten von ihnen sind nur für genau einen Datenbanktyp, z. B. Orakel, und sie sind oft sehr kompliziert zu verwenden. Wir haben Wochen gebraucht.

Wir haben uns für die professionelle Version der Datenmaskierungssuite entschieden, da diese am einfachsten zu erstellen war. Es hat auch coole Möglichkeiten, Daten zu maskieren, z. B. können Sie E-Mail-Adressen in echt aussehende ändern, z. B. ... @ siemens.com an mike.miller@seimsen.com.

Sie können es, soweit ich mich erinnere, kostenlos für etwa 500 (?) Datensätze ausprobieren.

Hier ist der Link http://www.data-masking-tool.com/


1
Nur ein Datenpunkt: Zum jetzigen Zeitpunkt kostet das Datenmaskierungs-Tool nur knapp 1.000 US-Dollar.
Michael Teper

2

Meine Art dies zu tun:

  1. Erstellen Sie eine neue Datenbank, in der nur die Rechte der Benutzer angezeigt und ausgewählt werden
  2. Erstellen Sie Ansichten für Tabellen, die in anderen Datenbanken angezeigt werden sollen
  3. Maskiere Spalten, die maskiert werden müssen mit: repeat ('*', char_length ( column to be masked))

2

Ich habe diesen Weg vor einigen Jahren zum ersten Mal beschritten und seitdem eine Beratung aufgebaut, die sich auf diese Praxis stützt.

Ich gehe davon aus, dass der Zweck darin besteht, Testdaten für die Verwendung in Testumgebungen aufzubauen, in denen das Personal, das auf die Daten zugreift, keine Rechte zum Anzeigen der Produktionsinformationen hat.

Als Erstes müssen Sie genau festlegen, welche Datenelemente maskiert werden müssen. Um dies zu tun, sollten Sie zunächst ein Datenerkennungs-Tool wie Schema Spy (Open Source) verwenden. Für diese Aufgabe benötigen Sie jedoch den entsprechenden jdbc-Treiber ist ein sehr nützlicher Schritt in diesem Prozess.

Talend Open Studio ist eines der besten Tools, mit denen ich in den letzten Jahren einige der ETL-Funktionen ausgeführt habe, und Sie können auch einige grundlegende Maskierungsübungen durchführen, indem Sie Werte durch zufällige oder ersetzen. Suchen / Ersetzen - um die Konsistenz aufrechtzuerhalten - mit der Kartenkomponente.

Wenn Sie jedoch ein echtes Datenmaskierungswerkzeug suchen, habe ich kein geeignetes Open-Source-Werkzeug gefunden. Wenn Sie ein sehr bescheidenes Budget für Tools haben, würde ich Data Masker vorschlagen, aber Sie müssen einige Import- und Exportvorgänge über MS SQL oder Oracle ausführen, da die Verbindung nur über diese Protokolle hergestellt wird.

Informationen zu Datenmaskierung, Datenmaskierungsmethode, Datenerkennung und Testdaten finden Sie unter http://www.datakitchen.com.au/2012-08-14-15-04-20/data-masking/data-masker-toolset Verwaltung. Es gibt auch einen nützlichen Blog unter http://www.dataobfuscation.com.au


1

Auf dem Markt ist ein Tool von Informatica erhältlich, das als Informatica ILM (TDM) bezeichnet wird. Hierbei wird PowerCenter als Backone für ETL- und Maskendaten mit verschiedenen verfügbaren Maskierungsoptionen verwendet. Sie benötigen jedoch einen Datenanalysten oder ein KMU, der versteht, wie die Daten maskiert werden sollen. Das Tool selbst liefert keine Informationen darüber, welche Felder maskiert werden sollen. Es gibt jedoch einen internen Algorithmus oder ein internes Verfahren oder einen internen Prozess zum Identifizieren von sensiblen Datenfeldern wie Name, ID-Spalten mit Nummer, Kreditkarte, SSN-Nummer, Kontonummer usw.


Mit Informatica ILM TDM können Sie auch eine Teilmenge von Daten generieren. So können Sie die Daten unterteilen und maskieren oder alle Daten maskieren und dann gemäß den geschäftlichen Anforderungen unterteilen.
Awadhesh Yona

1

In diesem Jahr habe ich die Gelegenheit, mit IBM Optim zusammenzuarbeiten, das behauptet, das zu tun, was verlangt wird. Ist nicht kostenlos, aber es funktioniert gut.


1

Das, das mir am besten gefällt, ist IRI FieldShield ( https://www.iri.com/products/fieldshield ) in Bezug auf Vielseitigkeit (die meisten Datenmaskierungsfunktionen), Geschwindigkeit (CoSort-Engine für Datenverschiebung im Inneren) und Ergonomie (einfache 4GL-Jobs) in seiner Eclipse-GUI mit Tonnen von DB- und Dateiverbindungen unterstützt). Preislich ist es ungefähr die Hälfte von IBM und Informatica, obwohl es auch in einer größeren Datenintegrationssuite für Transformation, Migration und BI von 'großen' Datenmengen verfügbar ist. Daher ist es auch nicht kostenlos, sondern verwendet Open Source (die IDE und kann OpenSSL und GPG verwenden) und die Skripte können unter Windows, Linux und anderen Unix-Versionen ausgeführt werden.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.