it-swarm.dev

Jakie są narzędzia do maskowania danych? (MySQL, Linux)

Szukam (idealnie darmowych, otwartych) narzędzi do maskowania danych. Czy coś takiego istnieje?

Uwaga: to powiązane pytanie dotyczy narzędzi do generowania danych testowych, ale w tym pytaniu jestem bardziej zainteresowany rozpoczęciem prawdziwych danych i maskowaniem ich do użycia w teście bez utraty specjalnych relacji, które czynią go interesującym do celów testowych. Wygenerowane dane są przydatne do niektórych celów testowych, ale rzeczywiste dane przyniosą problemy, o których nigdy nie pomyślałeś. Narzędzie do generowania dużych zestawów danych danych testowych

14
testerab

Byłbym bardzo zaskoczony, gdyby istniało ogólne narzędzie do tego - skąd miałoby „wiedzieć”, co to są dane wrażliwe, a co nie? Na przykład musiałby zbadać wszystkie dane i rozpoznać wszystkie możliwe formaty numeru karty kredytowej, numeru telefonu, kodu pocztowego, adresu e-mail i wszelkich innych danych uważanych za wrażliwe. Musi też być mądry w kwestii swojego schematu - np. czy powinien przepisać wszystkie adresy e-mail klientów na „[email protected]” - czy też jakakolwiek część bazy danych, aplikacji, innych narzędzi zakłada, że ​​adres e-mail klienta (lub SSN lub cokolwiek innego) jest unikalny? A może masz jakąś część aplikacji, która sumuje numery kart kredytowych, która pękłaby, gdybyś zresetował je wszystkie do 0000 0000 0000 0000? Czy też twój system telefoniczny zakłada, że ​​numer kierunkowy klienta odpowiada krajowi pod jego adresem?

Zasadniczo skonfigurowanie do tego celu dowolnego narzędzia będzie wymagało tyle samo lub więcej pracy, co napisanie własnego skryptu przy użyciu wiedzy o aplikacji. W mojej witrynie po prostu wprowadziliśmy zasadę, że każdy, kto doda kolumnę z takimi danymi, aktualizuje skrypt w celu jego anonimizacji w tym samym czasie, po wstępnym audycie w celu znalezienia wszystkich tych kolumn i napisania wersji 1.

9
Gaius

Nigdy nie widziałem takiego przedmiotu, ale pracowałem z kilkoma wrażliwymi zestawami danych w moim czasie, najważniejszą rzeczą, którą należy zaszyfrować, to tożsamość ludzi lub dane osobowe. To powinno pojawić się tylko w kilku miejscach w bazie danych.

Twoja operacja maskowania powinna zachować właściwości statystyczne i relacje danych i prawdopodobnie musi zachować aktualne kody referencyjne (lub przynajmniej jakiś kontrolowany mechanizm translacji), abyś mógł je uzgodnić z rzeczywistymi danymi.

Tego rodzaju rzeczy można osiągnąć, uzyskując odrębną listę nazw w polach i zastępując ją czymś takim jak FirstNameXXXX (gdzie XXXX jest numerem porządkowym, po jednym dla każdej odrębnej wartości). Numery kart kredytowych i podobne informacje, które mogłyby zostać wykorzystane do kradzieży tożsamości, prawdopodobnie nie są nie do zaakceptowania w środowisku programistycznym, ale potrzebne są tylko prawdziwe, jeśli testujesz systemy przetwarzania płatności - zwykle sprzedawca daje ci specjalne kody dla kont fikcyjnych.

Pisanie tego rodzaju procedur anonimowych nie jest szczególnie trudne, ale musisz dokładnie uzgodnić, co należy anonimizować w firmie. W razie potrzeby przejdź przez bazę danych pole po polu. Pytanie tak/nie da fałszywe wyniki, których nie chcesz. Poproś przedstawiciela firmy o wyjaśnienie przyczyny lub konsekwencji lub konsekwencji regulacyjnych braku anonimizacji określonych danych.

Jeśli Twoja baza danych jest niewielka, ma prosty model danych i jest dobrze zrozumiana przez obecne DBA - odpowiedzią może być „skryptowanie”. Jednak wysiłek (i koszt) ręcznej analizy i maskowania typowych baz danych może wymknąć się spod kontroli dość szybko, gdy zmieniają się wymagania, dodaje się funkcjonalność i przychodzą i odchodzą programiści/DBA.

Chociaż nie znam żadnych produktów maskujących dane typu open source, dostępne są oferty komercyjne, które są dość kompleksowe, stosunkowo łatwe w użyciu i mogą być zaskakująco rozsądne pod względem kosztów. Wiele z nich zawiera gotową do wykrycia możliwość identyfikacji i klasyfikacji poufnych danych (SSN, karty kredytowe, numery telefonów), a także funkcjonalność do utrzymywania sum kontrolnych, formatowania adresów e-mail, grupowania danych itp., Aby zamaskować dane wygląda i czuje się prawdziwy.

Ale nie musisz brać za to mojego (co prawda stronniczego) Słowa. Zapytaj analityków branżowych, takich jak Gartner lub Forrester, którzy mają wiele obiektywnych raportów na temat maskowania, które mogą pomóc.

Mamy nadzieję, że te komentarze zachęcą do rozważenia odkrywania komercyjnych produktów, a także opracowania wewnętrznego skryptu. Ostatecznie najważniejszą rzeczą jest ochrona wrażliwych danych, które wielu z nas widzi dzień po dniu, których tak naprawdę nie musimy wykonywać, aby wykonywać swoją pracę - stawiając nas i ludzi, których osobiste dane, które przechowujemy na ryzyko.

Kevin Hillier, starszy specjalista ds. Integracji, Camouflage Software Inc.

5
user757

Miałem to samo zadanie kilka tygodni temu. oceniliśmy niektóre systemy oprogramowania, ale większość z nich dotyczy tylko jednego rodzaju bazy danych, np. Wyrocznie i często są bardzo skomplikowane w użyciu ... więc nie ma nic fajnego do oceny tego. Zajęło nam to tygodnie.

Postanowiliśmy kupić profesjonalną wersję pakietu do maskowania danych, ponieważ była najłatwiejsza w użyciu. Ma również świetne możliwości maskowania danych, np. możesz zmienić adresy e-mail na prawdziwe, np. ... @ siemens.com do [email protected]

O ile pamiętam, możesz wypróbować za darmo dla około 500 (?) Rekordów.

Oto link http://www.data-masking-tool.com/

3
SaJoe

Po raz pierwszy podałem tę ścieżkę kilka lat temu i od tego czasu stworzyłem konsultacje oparte na tej praktyce.

Zakładam, że celem jest gromadzenie danych testowych do użytku w środowiskach testowych, w których pracownicy uzyskujący dostęp do danych nie mają uprawnień do przeglądania informacji produkcyjnych.

Pierwszą rzeczą do ustalenia jest dokładnie to, jakie elementy danych należy zamaskować i aby to zrobić, najlepiej zacząć od narzędzia do wykrywania danych, takiego jak Schema Spy (Open source), a do tego zadania będzie potrzebny odpowiedni sterownik jdbc, ale to jest bardzo przydatnym krokiem w tym procesie.

Talend Open Studio jest jednym z najlepszych narzędzi, których użyłem w ostatnich latach do wykonywania niektórych funkcji ETL, a także będziesz w stanie wykonać podstawową praktykę maskowania, zastępując wartości losowymi lub. Wyszukaj/zamień - aby zachować spójność - używając komponentu mapy.

Ale jeśli szukasz prawdziwego narzędzia do maskowania danych, nie znalazłem odpowiedniego narzędzia typu open source. Jeśli masz bardzo umiarkowany budżet na narzędzia, sugerowałbym Data Masker, ale będziesz musiał wykonać import i eksport za pośrednictwem MS SQL lub Oracle, ponieważ łączy się tylko za pośrednictwem tych protokołów.

Sprawdź http://www.datakitchen.com.au/2012-08-14-15-04-20/data-masking/data-masker-toolset informacje o maskowaniu danych, maskowaniu danych metodologia, odkrywanie danych i zarządzanie danymi testowymi. Istnieje również przydatny blog pod adresem http://www.dataobfuscation.com.a

2
user25272

Mój sposób na zrobienie tego:

  1. Utwórz nową bazę danych z tylko przeglądaniem i wybieraniem uprawnień dla użytkowników
  2. Utwórz widoki tabel, które powinny być widoczne w innych bazach danych
  3. Zamaskuj kolumny, które wymagają maskowania: repeat ('*', char_length (column to be masked))
2

Najbardziej podoba mi się IRI FieldShield ( https://www.iri.com/products/fieldshield ) pod względem wszechstronności (większość funkcji maskowania danych), prędkości (silnik CoSort do przenoszenia danych wewnątrz) i ergonomia (proste zadania 4GL obsługiwane w graficznym interfejsie użytkownika Eclipse z mnóstwem połączeń DB i plików). Pod względem ceny jest to około połowa IBM i Informatica, choć dostępna również w większym pakiecie do integracji danych do transformacji „dużych” danych, migracji i BI. Więc nie jest też darmowy, ale wykorzystuje pewne otwarte źródła (IDE i może używać OpenSSL i GPG), a skrypty działają w systemach Windows, Linux i innych systemach uniksowych.

1
Urvashi Saxena

W tym roku mam okazję współpracować z IBM Optim, który twierdzi, że robi to, o co jest poproszony. Nie jest darmowy, ale działa dobrze.

1
Mendes

Na rynku dostępne jest narzędzie Informatica o nazwie Informatica ILM (TDM). To wykorzystuje PowerCenter jako zaplecze dla ETL i maskowania danych z różnymi dostępnymi opcjami maskowania. Potrzebujesz analityka danych lub SME, który może zrozumieć, w jaki sposób dane powinny być maskowane. Samo narzędzie nie dostarcza informacji, które pola powinny być maskowane, jednak istnieje wewnętrzny algorytm lub procedura lub proces do identyfikacji wrażliwych pól danych, takich jak nazwa, kolumny identyfikacyjne z numerem, karta kredytowa, numer SSN, numer konta itp.

1
Awadhesh Yona