K-anonimato es una propiedad de un conjunto de datos que indica la reidentificación de sus registros. Un conjunto de datos es k-anónimo si los cuasi identificadores de cada persona en él son idénticos a los de al menos k – 1 personas en el conjunto.
Puedes calcular el valor del k-anonimato basado en una o más columnas o campos de un conjunto de datos. En este tema, se muestra cómo calcular los valores de k-anonimato para un conjunto de datos con la protección de datos sensibles. Para obtener más información sobre el k-anonimato o el análisis de riesgo en general, consulta el tema del concepto de análisis de riesgos antes de continuar.
Antes de comenzar
Antes de continuar, asegúrate de haber hecho lo siguiente:
- Accede a tu Cuenta de Google.
- En la consola de Google Cloud, en la página del selector de proyectos, selecciona o crea un proyecto de Google Cloud. Ir al selector de proyectos
- Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud. Obtén información para confirmar que tienes habilitada la facturación para tu proyecto.
- Habilita la protección de datos sensibles. Habilitar la protección de datos sensibles
- Selecciona un conjunto de datos de BigQuery para analizar. La protección de datos sensibles calcula la métrica de k-anonimato mediante el análisis de una tabla de BigQuery.
- Determina un identificador (si corresponde) y al menos un cuasi identificador en el conjunto de datos. Para obtener más información, consulta Términos y técnicas de análisis de riesgos.
Calcula k-anonimato
La protección de datos sensibles realiza análisis de riesgos cada vez que se ejecuta un trabajo de análisis de riesgos. Primero debes crear el trabajo, ya sea mediante la consola de Google Cloud, el envío de una solicitud a la API de DLP o el uso de una biblioteca cliente de protección de datos sensibles.
Console
En la consola de Google Cloud, ve a la página Crear análisis de riesgos.
En la sección Elige los datos de entrada (Choose input data), ingresa el ID del proyecto que contiene la tabla, el ID del conjunto de datos de la tabla y el nombre de la tabla de BigQuery que se analizará para especificar la tabla de BigQuery que se analizará.
En Métrica de privacidad a calcular, selecciona k-anonimato.
En la sección ID del trabajo, puedes asignar un identificador personalizado al trabajo y seleccionar una ubicación del recurso en la que la Protección de datos sensibles procesará tus datos. Cuando finalices, haz clic en Continuar.
En la sección Definir campos, especifica identificadores y cuasi identificadores para el trabajo de riesgo k-anonimato. La protección de datos sensibles accede a los metadatos de la tabla de BigQuery que especificaste en el paso anterior y, luego, intenta propagar la lista de campos.
- Selecciona la casilla de verificación correspondiente para especificar un campo como un identificador (ID) o un cuasi identificador (QI). Debes seleccionar entre 0 y 1 identificadores y 1 cuasi identificador como mínimo.
- Si la Protección de datos sensibles no puede propagar los campos, haz clic en Ingresar nombre del campo para ingresar uno o más campos de forma manual y configura cada uno como identificador o cuasidentificador. Cuando finalices, haz clic en Continuar.
En la sección Agregar acciones, puedes agregar acciones opcionales para realizar cuando se complete el trabajo de riesgo. Las opciones disponibles son las siguientes:
- Guardar en BigQuery: Guarda los resultados del análisis de análisis de riesgos en una tabla de BigQuery.
Publicar en Pub/Sub: Publica una notificación en un tema de Pub/Sub.
Notificación por correo electrónico: Te envía un correo electrónico con los resultados. Cuando termines, haz clic en Crear.
El trabajo de análisis de riesgo del k-anonimato comienza de inmediato.
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
REST
Para ejecutar un trabajo de análisis de riesgos nuevo a fin de calcular el k-anonimato, envía una solicitud al recurso projects.dlpJobs
, en la que PROJECT_ID indica tu identificador del proyecto:
https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs
La solicitud contiene un objeto RiskAnalysisJobConfig
, que se compone de lo siguiente:
Un objeto
PrivacyMetric
. Aquí es donde especificas que calculas k-anonimato mediante la inclusión de un objetoKAnonymityConfig
.Un objeto
BigQueryTable
. Incluye todo lo siguiente para especificar la tabla de BigQuery que se analizará:projectId
: el ID del proyecto que contiene la tabla.datasetId
: el ID del conjunto de datos de la tabla.tableId
: el nombre de la tabla.
Un conjunto de uno o más objetos
Action
, que representan acciones para ejecutar, en el orden dado, cuando finaliza el trabajo. Cada objetoAction
puede contener una de las siguientes acciones:- Objeto
SaveFindings
: Guarda los resultados del análisis de riesgos en una tabla de BigQuery. Objeto
PublishToPubSub
: Publica una notificación en un tema de Cloud Pub/Sub.Objeto
JobNotificationEmails
: Te envía un correo electrónico con los resultados.
Dentro del objeto
KAnonymityConfig
, especifica lo siguiente:quasiIds[]
: uno o más cuasi identificadores (objetosFieldId
) para analizar y usar en el cálculo de la k-anonimato. Cuando especificas varios cuasi identificadores, se consideran una sola clave compuesta. Los structs y los tipos de datos repetidos no son compatibles, pero los campos anidados son compatibles siempre que no sean structs en sí mismos ni estén anidados dentro de un campo repetido.entityId
: valor de identificador opcional que, cuando se establece, indica que todas las filas correspondientes a cadaentityId
distinto deben agruparse para el cálculo del k-anonimato. Por lo general, unentityId
será una columna que representa a un usuario único, como un ID de cliente o un ID de usuario. Cuando unentityId
aparece en varias filas con valores de cuasi identificador diferentes, estas filas se unirán para formar un conjunto múltiple que se usará como los cuasi identificadores de esa entidad. Para obtener más información sobre los ID de entidad, consulta ID de entidad y cálculo del k-anonimato en el tema conceptual Análisis de riesgos.
- Objeto
En cuanto envías una solicitud a la API de DLP, se inicia el trabajo de análisis de riesgos.
Enumera los trabajos de análisis de riesgos completados
Puedes ver una lista de los trabajos de análisis de riesgos que se ejecutaron en el proyecto actual.
Console
Para crear una lista de los trabajos de análisis de riesgos en ejecución y en los que ya se ejecutó en la consola de Google Cloud, haz lo siguiente:
En la consola de Google Cloud, abre la protección de datos sensibles.
Haz clic en la pestaña Trabajos y activadores de trabajos en la parte superior de la página.
Haz clic en la pestaña Trabajos de riesgo.
Aparecerá la lista de trabajo de riesgo.
Protocolo
Para enumerar los trabajos de análisis de riesgos que se ejecutan y se ejecutaron antes, envía una solicitud GET al recurso projects.dlpJobs
. Agregar un filtro de tipo de trabajo (?type=RISK_ANALYSIS_JOB
) reduce la respuesta solo a los trabajos de análisis de riesgo.
https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs?type=RISK_ANALYSIS_JOB
La respuesta que recibes contiene una representación JSON de todos los trabajos actuales y los trabajos de análisis de riesgos anteriores.
Visualiza los resultados del trabajo de k-anonimato
La protección de datos sensibles en la consola de Google Cloud cuenta con visualizaciones integradas para los trabajos de k-anonimato completados. Después de seguir las instrucciones de la sección anterior, en la lista de trabajos de análisis de riesgos, selecciona el trabajo para el que deseas ver los resultados. Si el trabajo se ejecutó de forma correcta, la parte superior de la página Detalles del análisis de riesgos será similar a la siguiente:
En la parte superior de la página, se brinda información sobre el trabajo de riesgo k-anonimato, incluido su ID de trabajo y, en el Contenedor, su ubicación de recursos.
Para ver los resultados del cálculo del k-anonimato, haz clic en la pestaña K-anonimato. Haz clic en la pestaña Configuración para ver la configuración del trabajo de análisis de riesgos.
En la pestaña K-anonimato, primero se enumera el ID de la entidad (si existe) y los cuasi identificadores que se usan para calcular el k-anonimato.
Gráfico de riesgos
El gráfico de Riesgo de reidentificación representa, en el eje y, el porcentaje potencial de pérdida de datos para filas únicas y combinaciones de cuasi identificadores únicos para lograr, en el eje x, un valor de k-anonimato. El color del gráfico también indica un riesgo potencial. Los tonos más oscuros de azul indican un riesgo más alto, mientras que los tonos más claros indican un riesgo menor.
Los valores k-anonimato más altos indican menos riesgos de reidentificación. Sin embargo, para alcanzar valores de k-anonimato más altos, debes quitar los porcentajes más altos de las filas totales y las combinaciones únicas del cuasi identificador únicas, lo que podría disminuir la utilidad de los datos. Para ver un valor de pérdida de porcentaje potencial específico de un valor de k-anonimato determinado, desplaza el cursor sobre el gráfico. Como se muestra en la captura de pantalla, aparece la información sobre la herramienta en el gráfico.
Para ver más detalles sobre un valor específico de k-anonimato, haz clic en el dato correspondiente. Se muestra una explicación detallada debajo del gráfico, y una tabla de datos de muestra aparece más abajo en la página.
Tabla de datos de muestra de riesgos
El segundo componente de la página de resultados del trabajo de riesgo es la tabla de datos de muestra. Muestra las combinaciones del cuasi identificador para un valor k-anonimato de destino determinado.
La primera columna de la tabla muestra los valores de k-anonimato. Haz clic en un valor de k-anonimato para ver los datos de muestra correspondientes que deberían descartarse a fin de alcanzar ese valor.
La segunda columna muestra la posible pérdida de datos de las filas únicas y las combinaciones del cuasi identificador, así como la cantidad de grupos con, al menos, registros k y la cantidad total de registros.
La última columna muestra un ejemplo de grupos que comparten una combinación de cuasi identificador, junto con la cantidad de registros que existen para esa combinación.
Recupera detalles del trabajo mediante REST
Para recuperar los resultados del trabajo de análisis de riesgo de K-anonimato mediante la API de REST, envía la siguiente solicitud GET al recurso projects.dlpJobs
. Reemplaza PROJECT_ID por el ID del proyecto y JOB_ID por el identificador del trabajo del que deseas obtener los resultados.
El ID de trabajo se mostró cuando iniciaste el trabajo y también se puede recuperar si enumeras todos los trabajos.
GET https://dlp.googleapis.com/v2/projects/PROJECT_ID/dlpJobs/JOB_ID
La solicitud muestra un objeto JSON que contiene una instancia del trabajo. Los resultados del análisis se encuentran dentro de la clave "riskDetails"
, en un objeto AnalyzeDataSourceRiskDetails
. Para obtener más información, consulta la referencia de la API del recurso DlpJob
.
Muestra de código: Calcula el k-anonimato con un ID de entidad
En este ejemplo, se crea un trabajo de análisis de riesgos que calcula el k-anonimato con un ID de entidad.
Para obtener más información sobre los IDs de entidad, consulta IDs de entidad y cálculo del k-anonimato.
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Go
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Java
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Node.js
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
PHP
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Python
Para obtener información sobre cómo instalar y usar la biblioteca cliente de la protección de datos sensibles, consulta Bibliotecas cliente de la protección de datos sensibles.
Para autenticarte en la protección de datos sensibles, configura las credenciales predeterminadas de la aplicación. Si deseas obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
¿Qué sigue?
- Obtén información para calcular el valor de l-diversidad para un conjunto de datos.
- Obtén más información para calcular el valor k-mapa de un conjunto de datos.
- Obtén más información para calcular el valor δ-presencia de un conjunto de datos.