Anonimizzazione e reidentificazione delle PII in set di dati su larga scala utilizzando Sensitive Data Protection

Last reviewed 2024-06-07 UTC

Questo documento illustra come utilizzare Sensitive Data Protection per creare una pipeline di trasformazione dei dati automatizzata per anonimizzare i dati sensibili come informazioni che consentono l'identificazione personale (PII). Le tecniche di anonimizzazione come La tokenizzazione (pseudonimizzazione) consente di preservare l'utilità dei dati per unione o analisi riducendo il rischio di gestire i dati con l'offuscamento gli identificatori sensibili non elaborati. Per ridurre al minimo il rischio di gestire grandi volumi di dati sensibili, puoi utilizzare una pipeline di trasformazione dei dati automatizzata per creare di repliche anonimizzate. Protezione dei dati sensibili consente trasformazioni come oscuramento, mascheramento, tokenizzazione, bucket e altri metodi di anonimizzazione. Quando un set di dati non è stato caratterizzato, Sensitive Data Protection può anche ispezionare i dati alla ricerca di informazioni sensibili utilizzando più di 100 classificatori integrati.

Questo documento è rivolto a un pubblico tecnico le cui responsabilità che includano la sicurezza dei dati, il loro trattamento o l'analisi dei dati. Questa guida presuppone che hai familiarità con il trattamento e la privacy dei dati, senza la necessità essere un esperto.

Architettura di riferimento

Il seguente diagramma mostra un'architettura di riferimento per l'utilizzo Prodotti Google Cloud per aggiungere un livello di sicurezza ai set di dati sensibili utilizzando tecniche di anonimizzazione.

Architettura della pipeline di anonimizzazione, di gestione della configurazione e di reidentificazione.

L'architettura è composta dai seguenti elementi:

  • Pipeline di flusso per l'anonimizzazione dei dati: anonimizza i dati sensibili i dati in testo utilizzando Dataflow. Puoi riutilizzare per più trasformazioni e casi d'uso.

  • Gestione della configurazione (modello e chiave di Sensitive Data Protection): una configurazione gestita di anonimizzazione accessibile solo a un piccolo gruppo di persone, ad esempio gli amministratori della sicurezza, per evitare di esporre l'anonimizzazione metodi e chiavi di crittografia.

  • Pipeline di convalida e reidentificazione dei dati: convalida le copie dei i dati anonimizzati e utilizza una pipeline Dataflow per a reidentificare i dati su larga scala.

Contribuire a proteggere i dati sensibili

Una delle priorità di qualsiasi azienda è contribuire a garantire la sicurezza dei propri utente e dei dipendenti e i dati di Google Cloud. Google Cloud offre sicurezza integrata misure per facilitare la sicurezza dei dati, tra cui la crittografia dei dati archiviati e la crittografia dei dati in transito.

Crittografia at-rest: Cloud Storage

Mantenere la sicurezza dei dati è fondamentale per la maggior parte delle organizzazioni. Non autorizzato l'accesso a dati anche moderatamente sensibili può danneggiare l'affidabilità, e la tua reputazione presso i tuoi clienti. Google cripta i dati archiviati inattivi per impostazione predefinita. Per impostazione predefinita, qualsiasi oggetto caricato Cloud Storage è criptato tramite Chiave di proprietà di Google e gestita da Google. Se il set di dati utilizza un metodo di crittografia preesistente e richiede un valore non predefinito prima del caricamento, esistono altre opzioni di crittografia di archiviazione ideale in Cloud Storage. Per ulteriori informazioni, vedi Opzioni di crittografia dei dati.

Crittografia dei dati in transito: Dataflow

Quando i dati sono in transito, la crittografia at-rest non è attiva. I dati in transito sono protetti da protocolli di rete sicuri denominati come crittografia dei dati in transito. Per impostazione predefinita, Dataflow utilizza chiavi di proprietà e gestite da Google. La tutorial associati a questo documento usano una pipeline automatizzata che impiega chiavi predefinite di proprietà di Google e gestite da Google.

Trasformazioni dei dati di Sensitive Data Protection

Sensitive Data Protection esegue due tipi principali di trasformazioni:

Entrambi i metodi recordTransformations e infoTypeTransformations possono anonimizza e cripta le informazioni sensibili nei tuoi dati. Ad esempio, puoi trasforma i valori nella colonna US_SOCIAL_SECURITY_NUMBER in modo che non identificabili o utilizzare la tokenizzazione per nasconderla, mantenendo al contempo dei dati.

Il metodo infoTypeTransformations ti consente di individuare dati sensibili e trasformare il risultato. Ad esempio, se disponi di annunci non strutturati o di testo libero di dati, il metodo infoTypeTransformations può aiutarti a identificare un SSN al loro interno di una frase e cripta il valore SSN lasciando il resto del testo intatti. Puoi anche definire metodi infoTypes personalizzati.

Il metodo recordTransformations ti consente di applicare una trasformazione configurazione per campo quando utilizzi dati strutturati o tabulari. Con recordTransformations, puoi applicare la stessa trasformazione su ogni valore in quel campo, ad esempio l'hashing o la tokenizzazione di ogni valore in una colonna con la colonna SSN come nome del campo o dell'intestazione.

Con il metodo recordTransformations , puoi anche combinare Metodo infoTypeTransformations che si applica solo ai valori nell'attributo specificato campi. Ad esempio, puoi utilizzare un metodo infoTypeTransformations all'interno di un Metodo recordTransformations per il campo denominato comments per oscurare eventuali risultati relativi a US_SOCIAL_SECURITY_NUMBER che si trovano all'interno del testo .

In un ordine di complessità sempre più complesso, i processi di anonimizzazione sono che segue:

  • Oscuramento: rimuovi i contenuti sensibili senza sostituire quelli.
  • Mascheramento: sostituisci i contenuti sensibili con caratteri fissi.
  • Crittografia: sostituisci i contenuti sensibili con stringhe criptate, possibilmente in modo reversibile.

Utilizzo dei dati delimitati

Spesso, i dati sono costituiti da record delimitati da un carattere selezionato, con tipi di riga di comando in ogni colonna, come un file CSV. Per questa classe di dati, puoi applicare trasformazioni di anonimizzazione (recordTransformations) direttamente, senza per esaminare i dati. Ad esempio, puoi aspettarti una colonna con l'etichetta SSN contenere solo dati SSN. Non è necessario esaminare i dati per sapere che Rilevatore infoType: US_SOCIAL_SECURITY_NUMBER. Tuttavia, i video in formato libero Le colonne con l'etichetta Additional Details possono contenere informazioni sensibili, ma le Il corso infoType è sconosciuto in anticipo. Per una colonna in formato libero, devi ispeziona il rilevatore infoTypes (infoTypeTransformations) prima di applicare trasformazioni di anonimizzazione. Sensitive Data Protection consente tipi di trasformazione per coesistere in un singolo modello di anonimizzazione. Sensitive Data Protection include più di 100 rilevatori infoTypes integrati. Puoi anche creare tipi personalizzati o modificare i rilevatori infoTypes integrati in a trovare dati sensibili univoci per la tua organizzazione.

Determinazione del tipo di trasformazione

Determinare quando utilizzare recordTransformations o infoTypeTransformations dipende dal caso d'uso specifico. Poiché l'utilizzo di infoTypeTransformations richiede più risorse e, pertanto, è più costoso, consigliamo di utilizzare questo metodo solo nelle situazioni in cui il tipo di dati non è noto. Puoi valutare i costi di esecuzione di Sensitive Data Protection utilizzando Calcolatore prezzi di Google Cloud.

Per esempi di trasformazione, questo documento fa riferimento a un set di dati che contiene File CSV con colonne fisse, come illustrato nella tabella seguente.

Nome colonna Ispezione infoType (personalizzata o integrata) Tipo di trasformazione di Sensitive Data Protection
Card Number Non applicabile Crittografia deterministica (DE)
Card Holder's Name Non applicabile Crittografia deterministica (DE)
Card PIN Non applicabile Crypto hashing
SSN (Social Security Number) Non applicabile Mascheramento
Age Non applicabile Bucketing
Job Title Non applicabile Bucketing
Additional Details Integrata:
IBAN_CODE, EMAIL_ADDRESS PHONE_NUMBER
Personalizza:
ONLINE_USER_ID
Sostituzione

Questa tabella elenca i nomi delle colonne e descrive il tipo di trasformazione necessari per ogni colonna. Ad esempio, la colonna Card Number contiene il merito numeri di carte che devono essere crittografati; ma non è necessario viene ispezionato perché il tipo di dati (infoType) è noto.

L'unica colonna in cui è consigliata una trasformazione dell'ispezione è la Colonna Additional Details. Questa colonna è in formato libero e può contenere PII, che, ai fini di questo esempio, dovrebbero essere rilevate e anonimizzate.

Gli esempi in questa tabella presentano cinque diverse anonimizzazioni trasformazioni:

  • Tokenizzazione bidirezionale: sostituisce i dati originali con un token deterministica e preservare l'integrità referenziale. Puoi utilizzare il token unire i dati o utilizzare il token nell'analisi aggregata. Puoi annullare annullare la tokenizzazione dei dati utilizzando la stessa chiave che hai usato per creare il token. Esistono due metodi per la tokenizzazione bidirezionale:

    • Crittografia deterministica (DE): Sostituisce i dati originali con un valore criptato con codifica Base64 e non conserva il set di caratteri o la lunghezza originali.
    • Crittografia con protezione del formato con FFX (FPE-FFX): Sostituisce i dati originali con un token generato utilizzando crittografia con protezione del formato in modalità FFX. Per impostazione predefinita, FPE-FFX conserva la lunghezza e il set di caratteri del testo di input. Manca l'autenticazione e un vettore di inizializzazione, che può causare un'espansione della lunghezza di output. Altri metodi, come la Germania, forniscono una sicurezza più efficace. e sono consigliati per i casi d'uso di tokenizzazione, a meno che lunghezza e la conservazione del set di caratteri è un requisito rigido, come compatibilità con i sistemi di dati legacy.
  • La tokenizzazione unidirezionale, utilizzando hashing crittografico: Sostituisce il valore originale con un valore hash, preservando il referenziale dei dati. Tuttavia, a differenza della tokenizzazione bidirezionale, un metodo unidirezionale reversibile. Il valore hash viene generato utilizzando un messaggio basato su SHA-256 codice di autenticazione (HMAC-SHA-256). sul valore di input.

  • Mascheramento: Sostituisce i dati originali con un carattere specificato, parzialmente o del tutto.

  • Bucketing: Sostituisce un valore più identificabile con un valore meno distintivo.

  • Sostituzione: Sostituisce i dati originali con un token o con il nome di infoType se rilevato.

Selezione del metodo

La scelta del metodo di anonimizzazione migliore può variare in base al caso d'uso. Per Ad esempio, se un'app precedente sta elaborando i record anonimizzati, formatta la conservazione potrebbe essere importante. Se hai a che fare con formati rigorosamente numeri a 10 cifre, FPE conserva la lunghezza (10 cifre) e il set di caratteri (numerico) di un input per il supporto del sistema precedente.

Tuttavia, se non è necessaria una formattazione rigida per la compatibilità con versioni precedenti, così come per i valori nella colonna Card Holder's Name, allora DE è il è la scelta preferita perché ha un metodo di autenticazione più forte. Sia FPE che DE consente di annullare o annullare la tokenizzazione dei token. Se non ti serve la de-tokenizzazione, l'hashing crittografico fornisce l'integrità, ma i token è irreversibile.

Altri metodi, come mascheramento, bucket, variazione della data, e sostituzione, sono ideali per i valori che non devono mantenere la piena integrità. Ad esempio, suddividere in bucket un valore di età (ad es. 27) in una fascia d'età (20-30) può essere ancora analizzato, riducendo al contempo l'univocità che potrebbe l'identificazione di un individuo.

Chiavi di crittografia dei token

Per le trasformazioni di anonimizzazione crittografica, una chiave di crittografia, nota anche come chiave di crittografia del token. La chiave di crittografia del token utilizzata per la crittografia di anonimizzazione viene utilizzata anche per reidentificare valore originale. La creazione e la gestione sicure delle chiavi di crittografia dei token che esulano dall'ambito di applicazione del presente documento. Tuttavia, esistono alcuni principi importanti da considerare, che verranno utilizzate in seguito nei tutorial associati:

  • Evita di utilizzare chiavi di testo non crittografato nel modello. Utilizza invece Cloud KMS per creare una chiave con wrapping.
  • Utilizza chiavi di crittografia dei token separate per ogni elemento di dati al fine di ridurre il rischio di compromettere le chiavi.
  • Ruota di crittografia dei token. Sebbene sia possibile ruotare la chiave con wrapping, la rotazione la chiave di crittografia del token interrompe l'integrità della tokenizzazione. Quando la chiave viene ruotato, occorre tokenizzare nuovamente l'intero set di dati.

Modelli di Sensitive Data Protection

Per deployment su larga scala, usa Modelli di Sensitive Data Protection per eseguire le seguenti operazioni:

  • Attiva il controllo di sicurezza con Identity and Access Management (IAM).
  • Disaccoppia le informazioni di configurazione e come anonimizza le informazioni informazioni, dall'implementazione delle tue richieste.
  • Riutilizzare un insieme di trasformazioni. Puoi utilizzare l'anonimizzazione e reidentificare i modelli su più set di dati.

BigQuery

Il componente finale dell'architettura di riferimento è la visualizzazione e l'utilizzo i dati anonimizzati BigQuery. BigQuery è lo strumento di data warehouse di Google che include dell'infrastruttura serverless, BigQuery ML e la capacità Sensitive Data Protection come strumento nativo. Nell'architettura di riferimento di esempio, BigQuery funge da data warehouse per i dati anonimizzati e come backend per una pipeline di dati di reidentificazione automatizzata in grado di condividere fino alla data Pub/Sub

Passaggi successivi