Protección de Datos Sensibles te ayuda a encontrar, comprender y gestionar los datos sensibles que hay en tu infraestructura. Una vez que hayas analizado tu contenido en busca de datos sensibles con Protección de Datos Sensibles, tendrás varias opciones para usar esa información. En este tema se explica cómo aprovechar las ventajas de otras Google Cloud funciones, como BigQuery, Cloud SQL y Looker Studio, para hacer lo siguiente:
- Almacena los resultados de los análisis de Protección de Datos Sensibles directamente en BigQuery.
- Generar informes sobre dónde se encuentran los datos sensibles en tu infraestructura.
- Ejecuta analíticas de SQL avanzadas para saber dónde se almacenan los datos sensibles y de qué tipo son.
- Automatiza las alertas o las acciones que se activan en función de un solo conjunto o de una combinación de resultados.
En este tema también se incluye un ejemplo completo de cómo usar Protección de Datos Sensibles junto con otras funciones de Google Cloud para hacer todo esto.
Analizar un segmento de almacenamiento
Primero, analiza tus datos. A continuación, se ofrece información básica sobre cómo analizar repositorios de almacenamiento con Protección de Datos Sensibles. Para obtener instrucciones completas sobre cómo analizar repositorios de almacenamiento, incluido el uso de bibliotecas de cliente, consulta Buscar datos sensibles en el almacenamiento y las bases de datos.
Para ejecutar una operación de análisis en unGoogle Cloud repositorio de almacenamiento, crea un objeto JSON que incluya los siguientes objetos de configuración:
InspectJobConfig
: Configura la tarea de análisis de Protección de Datos Sensibles y consta de lo siguiente:StorageConfig
: El repositorio de almacenamiento que se va a analizar.InspectConfig
: Cómo y qué buscar. También puedes usar una plantilla de inspección para definir la configuración de la inspección.Action
: Tareas que se deben ejecutar cuando se complete el trabajo. Esto puede incluir guardar los resultados en una tabla de BigQuery o publicar una notificación en Pub/Sub.
En este ejemplo, vas a analizar un bucket de Cloud Storage para buscar nombres de personas, números de teléfono, números de la Seguridad Social de EE. UU. y direcciones de correo electrónico. Después, envía los resultados a una tabla de BigQuery dedicada a almacenar la salida de Protección de Datos Sensibles. El siguiente JSON se puede guardar en un archivo o enviar directamente al método create
del recurso Protección de Datos Sensibles DlpJob
.
Entrada 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]"
}
}
}
}
]
}
}
Si especifica dos asteriscos (**
) después de la dirección del bucket de Cloud Storage (gs://[BUCKET_NAME]/**
), indica a la tarea de análisis que realice un análisis recursivo. Si colocas un solo asterisco (*
), se le indicará al trabajo que analice solo el nivel de directorio especificado y no más abajo.
El resultado se guardará en la tabla especificada del conjunto de datos y del proyecto indicados. Las tareas posteriores que especifiquen el ID de tabla determinado añadirán resultados a la misma tabla. También puedes omitir una clave "tableId"
si quieres indicar a Protección de Datos Sensibles que cree una tabla nueva
cada vez que se ejecute el análisis.
Después de enviar este JSON en una solicitud al método projects.dlpJobs.create
a través de la URL especificada, obtendrás la siguiente respuesta:
Salida 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 vez que se ha completado la tarea, guarda los resultados en la tabla de BigQuery especificada.
Para obtener el estado del trabajo, llama al método
projects.dlpJobs.get
o envía una solicitud GET a la siguiente URL. Sustituye [PROJECT_ID]
por el ID de tu proyecto y [JOB_ID]
por el identificador del trabajo que se indica en la respuesta de la API Cloud Data Loss Prevention a la solicitud de creación del trabajo (el identificador del trabajo irá precedido de "i-"):
GET https://dlp.googleapis.com/v2/projects/[PROJECT_ID]/dlpJobs/[JOB_ID]
En el caso del trabajo que acabas de crear, esta solicitud devuelve el siguiente JSON. Ten en cuenta que, después de los detalles de la inspección, se devuelve un resumen de los resultados del análisis. Si el análisis aún no se hubiera completado, su clave "state"
especificaría "RUNNING"
.
Salida 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"
}
Ejecutar analíticas en BigQuery
Ahora que has creado una tabla de BigQuery con los resultados de tu análisis de protección de datos sensibles, el siguiente paso es analizarla.
En la parte izquierda de la Google Cloud consola, en Big Data, haz clic en BigQuery. Abre tu proyecto y tu conjunto de datos y, a continuación, busca la tabla que se ha creado.
Puede ejecutar consultas SQL en esta tabla para obtener más información sobre lo que ha encontrado Protección de Datos Sensibles en su contenedor de datos. Por ejemplo, ejecute el siguiente comando para contar todos los resultados del análisis por infoType y sustituya los marcadores de posición por los valores reales correspondientes:
SELECT
info_type.name,
COUNT(*) AS iCount
FROM
`[PROJECT_ID].[DATASET_ID].[TABLE_ID]`
GROUP BY
info_type.name
Esta consulta devuelve un resumen de los resultados de ese segmento que puede tener un aspecto similar al siguiente:
Crear un informe en Looker Studio
Looker Studio te permite crear informes personalizados que se pueden basar en tablas de BigQuery. En esta sección, creará un informe de tabla sencillo en Looker Studio basado en las detecciones de Protección de Datos Sensibles almacenadas en BigQuery.
- Abre Looker Studio y crea un informe.
- Haz clic en Crear fuente de datos.
- En la lista de conectores, haga clic en BigQuery. Si es necesario, autoriza a Looker Studio para que se conecte a tus proyectos de BigQuery haciendo clic en Autorizar.
- Ahora, elige la tabla en la que quieres buscar y haz clic en Mis proyectos o en Proyectos compartidos, según dónde se encuentre el proyecto. Busca tu proyecto, conjunto de datos y tabla en las listas de la página.
- Haga clic en Conectar para generar el informe.
- Haz clic en Añadir al informe.
Ahora crearás una tabla que muestre la frecuencia de cada infoType. Seleccione el campo info_type.name
como Dimensión. La tabla resultante tendrá un aspecto similar al siguiente:
Pasos siguientes
Esto es solo el principio de lo que puede visualizar con Looker Studio y los resultados de Protección de Datos Sensibles. Puedes añadir otros elementos de gráficos y filtros de desglose para crear paneles de control e informes. Para obtener más información sobre lo que ofrece Looker Studio, consulta el resumen del producto Looker Studio.