Di solito il mascheramento dei dati statici viene eseguito sui dati di produzione inattivi in modo che vengano archiviati in modo sicuro o quando vengono replicati in ambienti non di produzione per scopi di test o sviluppo. Il Dynamic Data Masking (DDM) viene eseguito sui dati nelle tabelle di produzione durante le query, in modo che coloro che non sono autorizzati a visualizzare i valori delle colonne originali vedranno invece visualizzazioni redatte dei valori nella loro applicazione.
È risaputo che IRI FieldShield è un prodotto di mascheramento dei dati statico. Ma può anche essere utilizzato per mascherare e smascherare i dati nei database e nei file flat in modo più dinamico. Abbiamo visto casi d'uso che richiedono uno o entrambi, quando i dati a rischio sono inattivi (statici) o in movimento (dinamici) e devono essere protetti.
DDM tramite "redaction in flight" è disponibile da IRI tramite:librerie di mascheramento richiamabili tramite API che puoi creare su base autenticata e personalizzata da applicazioni C, C++, Java o .NET (vedi SDK qui); Chiamate SQL (procedura); e presto, uno speciale driver JDBC gestito tramite server proxy. Questo articolo affronta il primo metodo per un dinamico mascheramento in combinazione con il mascheramento dei dati statici.
Per dimostrare il mascheramento dei dati statici e dinamici, abbiamo utilizzato IRI Workbench, il front-end grafico gratuito per FieldShield e altri software IRI, costruito su Eclipse™. Negli scenari di sicurezza dei dati, conformità e test dei dati, gli utenti di Workbench si connettono alle loro origini, eseguono il rilevamento e la classificazione, quindi creano ed eseguono funzioni di mascheramento dei dati statici.
Più specificamente, definiscono le proprie classi di dati e i criteri di ricerca, quindi applicano regole di mascheramento coerenti per proteggerli. Questo li aiuta a governare meglio i loro dati e preservare l'integrità referenziale delle loro fonti. E li aiuta a conformarsi alle leggi sulla privacy dei dati e alle esigenze aziendali.
Workbench supporta anche il punteggio di rischio re-ID, il sottoinsieme del database, la generazione e la popolazione dei dati di test e molte altre funzionalità di gestione dei dati abilitate nella piattaforma IRI Voracity, che include FieldShield.
Essere in Eclipse significa anche che Workbench supporta lo sviluppo di applicazioni Java e quindi i tuoi programmi che possono mascherare o rimuovere dinamicamente i dati utilizzando funzioni di libreria compatibili con le funzioni statiche. Anche in questo caso, l'API è documentata nel FieldShield SDK.
Questo articolo fornisce un rapido esempio di utilizzo di FieldShield in Workbench per il mascheramento di dati statici di una tabella di database e quindi di smascheramento dinamico di tali dati in un programma Java. Tutto è configurato in IRI Workbench.
Configurazione
Innanzitutto, abbiamo creato e popolato una tabella di esempio in MySQL utilizzando l'album di ritagli SQL del plug-in Data Tools Platform (DTP). Abbiamo definito le colonne per:nome utente, email, ora e commenti:
Mascheramento statico dei dati
Abbiamo utilizzato la procedura guidata "Nuovo lavoro di mascheramento dei dati..." dal menu della barra degli strumenti in alto in Workbench per acquisire rapidamente quella tabella e i relativi metadati e creare un lavoro per mascherare staticamente la colonna e-mail utilizzando una delle funzioni di crittografia AES 256 in FieldShield, enc_aes256. Nello script FieldShield creato dalla procedura guidata, possiamo vedere la funzione da applicare alla colonna una volta, quindi su nuove righe nella tabella quando lo stesso processo viene attivato o programmato per essere eseguito nuovamente.
Una volta eseguita, la tabella nel database MySQL avrà la colonna e-mail crittografata.
Mascheramento (non) dinamico dei dati
Per dimostrare lo smascheramento dinamico dei dati, o in questo caso la decrittazione, abbiamo chiamato la funzione di decrittografia corrispondente, dec_aes256, nella libreria API FieldShield per Java:
Chiamate simili sono possibili da linguaggi .NET. Questa app di base mostra come connettersi alla tabella MySQL, convalidare l'utente e visualizzare sia il valore del testo cifrato crittografato staticamente dalla tabella, sia il valore dell'e-mail di testo normale decrittografato dinamicamente nella console:
Ovviamente, avresti anche potuto eseguire la decrittografia in Workbench in modo statico con un'attività FieldShield simile e autonoma come questa:
Lo script sopra decrittografa i valori e-mail del testo cifrato riportandoli al testo in chiaro originale in ogni riga del database. L'output può essere la tabella di origine stessa (per ripristinarla), altri target (ad esempio, per il test) o entrambi. È possibile creare automaticamente script di attività multiple che affrontano il mascheramento o lo smascheramento di più tabelle tramite le procedure guidate FieldShield in Workbench (e preservano l'integrità referenziale) con o senza classi di dati definite.
In questo caso, puoi verificare che i valori siano stati decifrati nella loro forma originale collegandoti al tuo database MySQL e selezionando i campi che vuoi vedere, oppure semplicemente visualizzando la tabella in Workbench. La vista decifrata è la tabella originale:
La linea di fondo è che è possibile mascherare e rimuovere la maschera dei dati in modo statico o dinamico utilizzando IRI FieldShield. Usa la modalità standalone per le operazioni statiche e la modalità API per quelle dinamiche. Le funzioni di mascheratura sono compatibili e ogni soluzione è abilitata nella stessa lastra di vetro.
- Più funzioni di rimozione/mascheramento, oltre a molte altre funzioni di trasformazione e riformattazione (tramite una licenza IRI CoSort o Voracity), possono essere eseguite su tali dati nello stesso script di lavoro e pass I/O .