Sensitive Data Protection ti aiuta a trovare, comprendere e gestire i dati sensibili presenti nella tua infrastruttura. Dopo aver analizzato i tuoi contenuti per rilevare dati sensibili utilizzando Sensitive Data Protection, hai diverse opzioni per decidere cosa fare con queste informazioni. Questo argomento mostra come sfruttare la potenza di altre funzionalità di Google Cloud come BigQuery, Cloud SQL e Looker Studio per:
- Archivia i risultati dell'analisi di Sensitive Data Protection direttamente in BigQuery.
- Genera report sulla posizione dei dati sensibili nella tua infrastruttura.
- Esegui analisi SQL avanzate per capire dove sono archiviati i dati sensibili e di che tipo sono.
- Automatizza avvisi o azioni da attivare in base a un singolo insieme o a una combinazione di risultati.
Questo argomento contiene anche un esempio completo di come utilizzare Sensitive Data Protection insieme ad altre funzionalità Google Cloud per ottenere tutti questi risultati.
Scansiona un bucket di archiviazione
Per prima cosa, esegui una scansione dei tuoi dati. Di seguito sono riportate le informazioni di base su come analizzare i repository di archiviazione utilizzando Sensitive Data Protection. Per istruzioni complete sulla scansione dei repository di archiviazione, incluso l'utilizzo delle librerie client, consulta Ispezione dello spazio di archiviazione e dei database per l'individuazione di dati sensibili.
Per eseguire un'operazione di scansione su un repository di archiviazioneGoogle Cloud , assembla un oggetto JSON che includa i seguenti oggetti di configurazione:
InspectJobConfig
: Configura il job di analisi Sensitive Data Protection ed è composto da:StorageConfig
: Il repository di archiviazione da analizzare.InspectConfig
: Come e cosa cercare. Puoi anche utilizzare un modello di ispezione per definire la configurazione dell'ispezione.Action
: Attività da eseguire al completamento del job. Ciò può includere il salvataggio dei risultati in una tabella BigQuery o la pubblicazione di una notifica in Pub/Sub.
In questo esempio, esegui la scansione di un bucket Cloud Storage per nomi di persone,
numeri di telefono, codici fiscali statunitensi e indirizzi email. Poi invii
i risultati a una tabella BigQuery dedicata all'archiviazione
dell'output di Sensitive Data Protection. Il seguente JSON può essere salvato in un file o
inviato direttamente al metodo
create
della risorsa
DlpJob
Sensitive Data Protection.
Input JSON:
POST https://dlp.googleapis.com/v2/projects/[PROJECT_ID]/dlpJobs
{
"inspectJob":{
"inspectConfig":{
"infoTypes":[
{
"name":"PERSON_NAME"
},
{
"name":"PHONE_NUMBER"
},
{
"name":"US_SOCIAL_SECURITY_NUMBER"
},
{
"name":"EMAIL_ADDRESS"
}
],
"includeQuote":true
},
"storageConfig":{
"cloudStorageOptions":{
"fileSet":{
"url":"gs://[BUCKET_NAME]/**"
}
}
},
"actions":[
{
"saveFindings":{
"outputConfig":{
"table":{
"projectId":"[PROJECT_ID]",
"datasetId":"[DATASET_ID]",
"tableId":"[TABLE_ID]"
}
}
}
}
]
}
}
Se specifichi due asterischi (**
) dopo l'indirizzo del bucket Cloud Storage (gs://[BUCKET_NAME]/**
), stai indicando al job di scansione di eseguire la scansione in modo ricorsivo. Se inserisci un solo asterisco (*
),
il job analizzerà solo il livello di directory specificato e non scenderà più in profondità.
L'output verrà salvato nella tabella specificata all'interno del progetto e del set di dati
indicati. I job successivi che specificano l'ID tabella indicato aggiungono i risultati
alla stessa tabella. Puoi anche omettere una
"tableId"
chiave se vuoi indicare a Sensitive Data Protection di creare una nuova
tabella ogni volta che viene eseguita la scansione.
Dopo aver inviato questo JSON in una richiesta al metodo
projects.dlpJobs.create
tramite l'URL specificato, riceverai la seguente risposta:
Output JSON:
{
"name":"projects/[PROJECT_ID]/dlpJobs/[JOB_ID]",
"type":"INSPECT_JOB",
"state":"PENDING",
"inspectDetails":{
"requestedOptions":{
"snapshotInspectTemplate":{
},
"jobConfig":{
"storageConfig":{
"cloudStorageOptions":{
"fileSet":{
"url":"gs://[BUCKET_NAME]/**"
}
}
},
"inspectConfig":{
"infoTypes":[
{
"name":"PERSON_NAME"
},
{
"name":"PHONE_NUMBER"
},
{
"name":"US_SOCIAL_SECURITY_NUMBER"
},
{
"name":"EMAIL_ADDRESS"
}
],
"minLikelihood":"POSSIBLE",
"limits":{
},
"includeQuote":true
},
"actions":[
{
"saveFindings":{
"outputConfig":{
"table":{
"projectId":"[PROJECT_ID]",
"datasetId":"[DATASET_ID]",
"tableId":"[TABLE_ID]"
}
}
}
}
]
}
}
},
"createTime":"2018-11-19T21:09:07.926Z"
}
Una volta completato il job, i risultati vengono salvati nella tabella BigQuery specificata.
Per ottenere lo stato del job, chiama il metodo
projects.dlpJobs.get
o invia una richiesta GET al seguente URL, sostituendo [PROJECT_ID]
con l'ID progetto e [JOB_ID]
con l'identificatore del job fornito nella
risposta dell'API Cloud Data Loss Prevention alla richiesta di creazione del job (l'identificatore del job sarà
preceduto da "i-"):
GET https://dlp.googleapis.com/v2/projects/[PROJECT_ID]/dlpJobs/[JOB_ID]
Per il job che hai appena creato, questa richiesta restituisce il seguente JSON. Tieni presente
che un riepilogo dei risultati della scansione viene restituito dopo i dettagli
dell'ispezione. Se la scansione non fosse ancora stata completata, la chiave "state"
specificherebbe
"RUNNING"
.
Output JSON:
{
"name":"projects/[PROJECT_ID]/dlpJobs/[JOB_ID]",
"type":"INSPECT_JOB",
"state":"DONE",
"inspectDetails":{
"requestedOptions":{
"snapshotInspectTemplate":{
},
"jobConfig":{
"storageConfig":{
"cloudStorageOptions":{
"fileSet":{
"url":"gs://[BUCKET_NAME]/**"
}
}
},
"inspectConfig":{
"infoTypes":[
{
"name":"PERSON_NAME"
},
{
"name":"PHONE_NUMBER"
},
{
"name":"US_SOCIAL_SECURITY_NUMBER"
},
{
"name":"EMAIL_ADDRESS"
}
],
"minLikelihood":"POSSIBLE",
"limits":{
},
"includeQuote":true
},
"actions":[
{
"saveFindings":{
"outputConfig":{
"table":{
"projectId":"[PROJECT_ID]",
"datasetId":"[DATASET_ID]",
"tableId":"[TABLE_ID]"
}
}
}
}
]
}
},
"result":{
"processedBytes":"536734051",
"totalEstimatedBytes":"536734051",
"infoTypeStats":[
{
"infoType":{
"name":"PERSON_NAME"
},
"count":"269679"
},
{
"infoType":{
"name":"EMAIL_ADDRESS"
},
"count":"256"
},
{
"infoType":{
"name":"PHONE_NUMBER"
},
"count":"7"
}
]
}
},
"createTime":"2018-11-19T21:09:07.926Z",
"startTime":"2018-11-19T21:10:20.660Z",
"endTime":"2018-11-19T22:07:39.725Z"
}
Esegui l'analisi in BigQuery
Ora che hai creato una nuova tabella BigQuery con i risultati della scansione di Sensitive Data Protection, il passaggio successivo consiste nell'eseguire l'analisi sulla tabella.
Sul lato sinistro della console Google Cloud , in Big Data, fai clic su BigQuery. Apri il progetto e il set di dati, quindi individua la nuova tabella creata.
Puoi eseguire query SQL su questa tabella per scoprire di più su ciò che Sensitive Data Protection ha trovato nel tuo bucket di dati. Ad esempio, esegui il seguente comando per conteggiare tutti i risultati della scansione per infoType, sostituendo i segnaposto con i valori reali appropriati:
SELECT
info_type.name,
COUNT(*) AS iCount
FROM
`[PROJECT_ID].[DATASET_ID].[TABLE_ID]`
GROUP BY
info_type.name
Questa query restituisce un riepilogo dei risultati per il bucket che potrebbe essere simile al seguente:
Creare un report in Looker Studio
Looker Studio ti consente di creare report personalizzati che possono essere basati su tabelle BigQuery. In questa sezione, creerai un semplice report a tabella in Looker Studio basato sui risultati di Sensitive Data Protection archiviati in BigQuery.
- Apri Looker Studio e avvia un nuovo report.
- Fai clic su Crea nuova origine dati.
- Dall'elenco dei connettori, fai clic su BigQuery. Se necessario, autorizza Looker Studio a connettersi ai tuoi progetti BigQuery facendo clic su Autorizza.
- Ora scegli la tabella in cui eseguire la ricerca, quindi fai clic su I miei progetti o su Progetti condivisi, a seconda di dove si trova il progetto. Individua il tuo progetto, il tuo set di dati e la tua tabella negli elenchi della pagina.
- Fai clic su Connetti per generare il report.
- Fai clic su Aggiungi al report.
Ora creerai una tabella che mostri la frequenza di ogni infoType. Seleziona il campo info_type.name
come
Dimensione. La tabella risultante sarà simile alla seguente:
Passaggi successivi
Questo è solo l'inizio di ciò che puoi visualizzare utilizzando Looker Studio e l'output di Sensitive Data Protection. Puoi aggiungere altri elementi grafici e filtri di visualizzazione in dettaglio per creare dashboard e report. Per saperne di più su cosa è disponibile in Looker Studio, consulta la panoramica del prodotto Looker Studio.