Database
 sql >> Database >  >> RDS >> Database

Come mascherare Cassandra con IRI FieldShield

AGGIORNAMENTO:Q2'17 :i driver JDBC e ODBC inclusi e la gestione JSON nativa in sospeso possono rendere le connessioni più rapide e fluide rispetto all'approccio mostrato di seguito. Sì puoi anche usare l'edizione Hadoop di IRI Voracity per mascherare direttamente i dati in HDFS. I dati esportati nel modo seguente in un file flat in HDFS possono essere mascherati a livello di campo dal modulo FieldShield Voracity nello stesso modo mostrato di seguito tramite MapReduce2, Spark, Spark Stream, Storm o Tez senza ulteriore codifica.

AGGIORNAMENTO:Q3'19 :ora disponibili in IRI DarkShield sono connettori pronti all'uso nativi per Cassandra e MongoDB che non richiedono passaggi di esportazione/maschera/importazione e possono gestire dati di raccolta semi e non strutturati. Come FieldShield, anche DarkShield è disponibile (incluso) negli abbonamenti alla piattaforma Voracity. Leggi questo articolo di istruzioni per trovare e mascherare PII mobili nei DB Cassandra NoSQL. Se sei interessato a popolare Cassandra con dati di test sintetici, consulta questo articolo.

DataStax/Cassandra non può mascherare colonne specifiche per impedire agli utenti non autorizzati di vedere le informazioni di identificazione personale (PII). In questo articolo mostreremo come esportare i dati da un database Cassandra in un file CSV e utilizzare il prodotto IRI FieldShield (disponibile anche nella piattaforma IRI Voracity) per randomizzare, mascherare e crittografare i dati in quel file CSV. Quindi importeremo nuovamente quei dati in Cassandra, aggiornati e protetti. Un altro articolo è previsto al rilascio della connessione più diretta di IRI al DB.

Nel nostro esempio abbiamo una tabella con le informazioni sugli studenti in DataStax. Le colonne sono:id_num (la chiave primaria), honors, semester_hours, socsecnum (numero di previdenza sociale) e user_id.

Per annullare l'identificazione di ogni studente, renderemo casuali le loro ore_semestre, maschereremo il loro socsecnum e crittograferemo il valore user_id in modo che le PII di ogni studente siano protette.

Dati non protetti in Cassandra

Per i nostri esempi da riga di comando, utilizziamo la shell CQL DataStax Cassandra.

Esportazione di una tabella Cassandra in un file CSV

Per esportare una tabella Cassandra in un file CSV, esegui il seguente comando dalla shell Cassandra CQL:

COPY <Exporting Table> TO '<File Path to the CSV you exporting to>' WITH HEADER=TRUE;

Apertura e definizione della sorgente CSV

  1. Dalla barra degli strumenti superiore della GUI di IRI Workbench per FieldShield (basata su Eclipse), trova l'icona FieldShield e seleziona "Nuovo processo di protezione" per eseguire la procedura guidata. Assegna un nome al tuo file di lavoro "CassShieldJob.fcl" e fai clic su "Avanti".
  2. Fai clic su "Aggiungi origine dati", quindi su "Sfoglia" fino al file CSV creato con l'esportazione. Quindi fai clic su "OK".
  3. Fai clic su "Scopri metadati" e nomina il (file di definizione dei dati riutilizzabile) "StudentsMeta.ddf" e fai clic su "Avanti". Fai clic su "Sì" per rilevare automaticamente e "Ottieni i nomi dei campi dalla riga di intestazione" prima di fare clic su "OK", quindi su "Fine".
  4. Ora dovresti vedere i tuoi campi nell'elenco delle origini dati. Fai clic su "Avanti".

Applicazione delle protezioni

  1. Fai clic su "Aggiungi destinazione dati" e sfoglia per creare un nuovo file CSV di destinazione che contenga la versione protetta dei dati (o per sovrascrivere l'origine, utilizza lo stesso percorso/file. Quindi fai clic su "Campo destinazione Layout', per rivedere il layout e applicare le protezioni ai campi di output. Sono presenti due caselle di riepilogo; la parte superiore mostra i campi di origine e la parte inferiore mostra i campi di destinazione a cui applicherai il campo "scudi".
  2. Randomizza semester_hours: seleziona il nome del campo semester_hours nel riquadro target e fai clic su "Protezione campo". Selezionare Generazione valore casuale e, per tipo, selezionare Cifra. Imposta le dimensioni minime e massime casuali su 2 e fai clic su OK.
  3. Maschera socsecnum:seleziona il campo socsecnum e fai nuovamente clic su "Protezione campo". Seleziona Masking e scegli l'opzione SSN USA predefinita per esporre solo le ultime quattro cifre dei SSN. Fai clic su "OK".
  4. Crittografa user_id:seleziona user_id e fai nuovamente clic su "Protezione campo". Seleziona Crittografia e decrittografia e scegli enc_fp_aes256_alphanum per la crittografia di conservazione del formato. Inserisci una passphrase (la chiave di decrittazione) e nella casella Escludi digita "Utente_" per impedire che la parte User_ del nostro nome utente venga crittografata, quindi fai clic su "Fine".
  5. I campi da proteggere dovrebbero apparire come segue:

Fai clic su "OK", quindi su "Fine" per vedere lo script (processo eseguibile) creato per te:

Esegui il lavoro in IRI Workbench o dalla riga di comando,

fieldshield /spec=CassShieldJob.fcl

Il file CSV che hai creato conterrà i nuovi dati mascherati e crittografati.

Importazione dei dati protetti in Cassandra

Per importare nuovamente i dati modificati in Cassandra, utilizzare il comando seguente nella shell CQL di Cassandra:

COPY <Table you are importing data to> (field1fromCSV, field2fromCSV, ...) FROM '<Path to CSV>';

Dati protetti in Cassandra

Per i dettagli sulle funzionalità di FieldShield, vedere http://www.iri.com/products/fieldshield/technical-details.