DataSunrise Masking per Oracle
DataSunrise Masking per Oracle è progettato per proteggere i dati sensibili in transito da minacce interne ed esterne degli utenti. La funzionalità oscura i dati originali e fornisce agli utenti caratteri casuali anziché record reali del database. In questo modo, gli utenti non autorizzati possono ancora lavorare con il database di produzione ma non ottengono mai l’accesso a informazioni sensibili originali.
Gli strumenti di mascheramento dei dati Oracle di DataSunrise prevengono efficacemente l’esposizione di informazioni sensibili quando si concede l’accesso al database a organizzazioni terze. Ci sono molte occasioni in cui le organizzazioni devono condividere dati dai propri database di produzione con dipendenti di terze parti. Ecco alcuni esempi:
- Una determinata organizzazione assume specialisti IT esterni per personalizzare il proprio sistema aziendale o eseguire test sul database, aggiornamenti ecc.
- Un’azienda sanitaria fornisce ai ricercatori medici informazioni su studi clinici.
- Un’azienda di vendita al dettaglio condivide informazioni sulle vendite con i ricercatori di mercato.
Il punto è che nella maggior parte dei casi gli specialisti terzi non hanno bisogno di dati reali contenuti nel database. Un ambiente che imita un database di produzione reale è sufficiente. Il modo migliore per proteggere i dati sensibili mentre li si trasferisce a una terza parte è sostituirli con alcuni dati neutrali. E il modo più efficiente per farlo è il mascheramento.
Il punto importante è che i dati mascherati devono essere sufficientemente coerenti per supportare il corretto funzionamento dell’applicazione della terza parte. In parole semplici, lo scopo principale del mascheramento è rendere i dati sensibili inutili per i malintenzionati mantenendoli utili per coloro che devono riceverli.
A volte in tali situazioni viene utilizzato il mascheramento statico. Ciò consente di fornire alla terza parte una copia autonoma di un database reale contenente alcuni dati neutrali al posto dei dati sensibili. Sebbene questo metodo sia affidabile, potrebbe essere costoso e richiedere molto tempo.
Ecco perché nella maggior parte dei casi il mascheramento dinamico dei dati è preferibile. A differenza del mascheramento statico dei dati, il mascheramento dinamico dei dati riguarda l’oscuramento dei dati sensibili al volo, mentre li si trasferisce alle parti esterne. In questo caso, i contenuti effettivi del database rimangono intatti e solo l’output del database viene oscurato.
Come viene eseguito il mascheramento dei dati Oracle
Lo strumento di mascheramento dinamico di DataSunrise funziona come un proxy tra i clienti (quegli specialisti di terze parti) e il tuo database Oracle. I clienti contattano il database di produzione solo tramite il proxy DataSunrise (qualsiasi accesso diretto al database è disabilitato).
Lo strumento di mascheramento dei dati Oracle intercetta la query del cliente, la modifica secondo le politiche di sicurezza esistenti e reindirizza la query modificata (“mascherata”) al database. Avendo ricevuto una query “mascherata”, il database restituisce dati falsi (oscurati) invece dei valori reali richiesti originariamente dal cliente. Dato che nessun dato reale lascia il database, questo metodo di oscuramento dei dati è molto affidabile.
Ed ecco come appare
Ad esempio, qui abbiamo una tabella Oracle che assomiglia a un elenco di clienti inclusi indirizzi, email e numeri di carte di credito. Prima di esportare questo elenco in un sistema di terze parti, dobbiamo oscurare i dati personali dei clienti.
Per fare ciò, sono state create alcune regole di mascheramento. Oltre ai modelli di mascheramento generico, DataSunrise fornisce algoritmi di oscuramento per email e numeri di carte di credito. Quindi, abbiamo creato alcune regole di mascheramento per oscurare i dati nelle colonne contenenti i numeri di carte di credito e gli indirizzi email dei clienti. Supponiamo che lasciare altre colonne non mascherate sia accettabile.
Ed ecco come appare la tabella dopo l’applicazione del mascheramento. Come puoi vedere, i dati nelle colonne specificate sono stati oscurati e quindi sono diventati inutili per potenziali malintenzionati.
Interni del mascheramento dei dati Oracle
Ora vediamo come appare il mascheramento in SQL.
Ecco la query originale del cliente:
/* + NO_PARALLEL */ SELECT ROWID "ROWID", ORA_ROWSCN "ORA_ROWSCN", ORDERNUMBER ORDERNUMBER, FIRSTNAME FIRSTNAME, LASTNAME LASTNAME, ADDRESS ADDRESS, ZIP ZIP, EMAIL EMAIL, CARD CARD FROM "SALES"."CUSTOMERS"
E la query SQL che il database ottiene dopo l’applicazione del mascheramento:
/* + NO_PARALLEL */ SELECT ROWID "ROWID", ORA_ROWSCN "ORA_ROWSCN", ORDERNUMBER ORDERNUMBER, FIRSTNAME FIRSTNAME, LASTNAME LASTNAME, ADDRESS ADDRESS, ZIP ZIP, CAST(regexp_replace(SUBSTR("EMAIL", 0, REGEXP_INSTR("EMAIL", '.[[:alnum:]]+($| )')), '[[:alnum:]]', '*') || SUBSTR("EMAIL", REGEXP_INSTR("EMAIL", '.[[:alnum:]]+($| )') + 1) AS VARCHAR2(50)) EMAIL, CAST(TRANSLATE(SUBSTR("CARD", 0, LENGTH(TRIM("CARD")) - 4), '0123456789', 'XXXXXXXXXX') || SUBSTR("CARD", LENGTH(TRIM("CARD")) - 3) AS VARCHAR2(20)) CARD FROM "SALES"."CUSTOMERS"