En este documento, se describe cómo usar la API de Cloud Data Loss Prevention para detectar texto y objetos sensibles en una imagen. Sensitive Data Protection devuelve la ubicación de los datos sensibles que detecta.
Cuando se establece una imagen como entrada, Sensitive Data Protection detecta datos sensibles en esta. El resultado de una operación de inspección incluye los infoTypes detectados, la probabilidad de la coincidencia y los valores de longitud y coordenadas de píxeles que indican las áreas en las que Sensitive Data Protection encontró los datos sensibles. Las coordenadas en la esquina inferior izquierda de una imagen son (0,0).
Inspecciona una imagen en busca de todos los Infotipos predeterminados
Para inspeccionar una imagen en busca de datos sensibles, envía una imagen codificada en base64 al método content.inspect. Si no especificas los tipos de información (infoTypes) específicos que se deben buscar, Sensitive Data Protection busca los Infotipos más comunes.
Para inspeccionar una imagen en busca de todos los Infotipos predeterminados, sigue estos pasos:
- Codifica la imagen en base64.
- Envíe una solicitud al método
content.inspectde la API de DLP. La solicitud solo requiere la imagen codificada en base64.
Por ejemplo, considere esta imagen de un documento.
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
REST
Para inspeccionar esta imagen en busca de infoTypes predeterminados, envíe el siguiente JSON al método content.inspect:
{ "item": { "byteItem": { "data": "BASE64_ENCODED_IMAGE", "type": "IMAGE_PNG" } } }
El resultado es similar a lo siguiente:
{ "result": { "findings": [ { "infoType": { "name": "PERSON_NAME", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 383, "left": 419, "width": 82, "height": 38 }, { "top": 383, "left": 494, "width": 91, "height": 37 } ] } } ] }, "createTime": "2025-05-22T20:27:03.730Z", "findingId": "2025-05-22T20:27:03.731510Z4997664074931396457" }, { "infoType": { "name": "EMAIL_ADDRESS", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "VERY_LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 445, "left": 390, "width": 357, "height": 48 } ] } } ] }, "createTime": "2025-05-22T20:27:03.728Z", "findingId": "2025-05-22T20:27:03.731538Z284444825812417100" }, { "infoType": { "name": "PHONE_NUMBER", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "VERY_LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 515, "left": 404, "width": 223, "height": 34 } ] } } ] }, "createTime": "2025-05-22T20:27:03.729Z", "findingId": "2025-05-22T20:27:03.731544Z7910624062018243126" }, { "infoType": { "name": "PERSON_NAME", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "UNLIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 798, "left": 473, "width": 81, "height": 45 } ] } } ] }, "createTime": "2025-05-22T20:27:03.730Z", "findingId": "2025-05-22T20:27:03.731551Z2345136870450870227" }, { "infoType": { "name": "PERSON_NAME", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "UNLIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 837, "left": 1166, "width": 46, "height": 45 } ] } } ] }, "createTime": "2025-05-22T20:27:03.730Z", "findingId": "2025-05-22T20:27:03.731557Z6725780456697828166" }, { "infoType": { "name": "PERSON_NAME", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "UNLIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 915, "left": 453, "width": 141, "height": 43 } ] } } ] }, "createTime": "2025-05-22T20:27:03.730Z", "findingId": "2025-05-22T20:27:03.731562Z7328853308213386463" }, { "infoType": { "name": "PERSON_NAME", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "UNLIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 915, "left": 1180, "width": 105, "height": 43 } ] } } ] }, "createTime": "2025-05-22T20:27:03.730Z", "findingId": "2025-05-22T20:27:03.731569Z5618332947461439057" } ] } }
En este ejemplo, Sensitive Data Protection encontró los siguientes infoTypes, aunque su confianza de coincidencias para cada uno varía:
PERSON_NAMEEMAIL_ADDRESSPHONE_NUMBER
Consulta la guía de inicio rápido de JSON para obtener más información sobre el uso de la API de DLP con JSON.
Ten en cuenta que Sensitive Data Protection suele usar varios cuadros para indicar dónde se encuentra una sola instancia de datos sensibles en la imagen.
Inspecciona una imagen en busca de Infotipos específicos
Si quieres inspeccionar una imagen solo para ciertos tipos de datos sensibles, especifica sus infotipos integrados correspondientes.
Para inspeccionar una imagen en busca de Infotipos específicos, sigue estos pasos:
- Codifica la imagen en base64.
- Envía una solicitud al método
content.inspectde la API de DLP. La solicitud debe incluir lo siguiente:- La imagen codificada en base64
- Uno o más detectores de Infotipos
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
REST
Considera la imagen original de la sección anterior. Para inspeccionar solo las direcciones de correo electrónico y los números de teléfono, envía el siguiente JSON al método content.inspect.
{ "item": { "byteItem": { "data": "BASE64_ENCODED_IMAGE", "type": "IMAGE_PNG" } }, "inspectConfig": { "infoTypes": [ { "name": "PHONE_NUMBER" }, { "name": "EMAIL_ADDRESS" } ] } }
El resultado es similar a lo siguiente:
{ "result": { "findings": [ { "infoType": { "name": "EMAIL_ADDRESS", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "VERY_LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 445, "left": 390, "width": 357, "height": 48 } ] } } ] }, "createTime": "2025-05-22T20:59:48.653Z", "findingId": "2025-05-22T20:59:48.654873Z3907900286477341146" }, { "infoType": { "name": "PHONE_NUMBER", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "VERY_LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 515, "left": 404, "width": 223, "height": 34 } ] } } ] }, "createTime": "2025-05-22T20:59:48.653Z", "findingId": "2025-05-22T20:59:48.654914Z7486984971818202511" } ] } }
Consulta la guía de inicio rápido de JSON para obtener más información sobre el uso de la API de DLP con JSON.
Inspecciona una imagen en busca de objetos sensibles
Para inspeccionar una imagen en busca de objetos sensibles, especifique los detectores de Infotipo de objetos integrados en la solicitud.
Para inspeccionar una imagen en busca de infoTypes de objetos específicos, siga estos pasos:
- Codifica la imagen en base64.
- Envía una solicitud al método
content.inspectde la API de DLP. La solicitud debe incluir lo siguiente:- La imagen codificada en base64
- Uno o más detectores de Infotipo de objetos
Por ejemplo, considera la siguiente imagen.
Para inspeccionar esta imagen en busca de infoTypes de objetos específicos, envíe el siguiente JSON al método content.inspect:
{ "item": { "byteItem": { "data": "BASE64_ENCODED_IMAGE", "type": "IMAGE_PNG" } }, "inspectConfig": { "infoTypes": [ { "name": "OBJECT_TYPE/BARCODE" }, { "name": "OBJECT_TYPE/LICENSE_PLATE" }, { "name": "OBJECT_TYPE/WHITEBOARD" } ] } }
El resultado es similar a lo siguiente:
{ "result": { "findings": [ { "infoType": { "name": "OBJECT_TYPE/WHITEBOARD", "sensitivityScore": { "score": "SENSITIVITY_LOW" } }, "likelihood": "LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "left": 427, "width": 561, "height": 678 } ] } } ] }, "createTime": "2025-05-22T22:25:09.564718Z", "findingId": "2025-05-22T22:25:09.564721Z3400818180961962648" }, { "infoType": { "name": "OBJECT_TYPE/LICENSE_PLATE", "sensitivityScore": { "score": "SENSITIVITY_MODERATE" } }, "likelihood": "LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 554, "left": 137, "width": 187, "height": 70 } ] } } ] }, "createTime": "2025-05-22T22:25:09.564752Z", "findingId": "2025-05-22T22:25:09.564753Z2359274424382836782" }, { "infoType": { "name": "OBJECT_TYPE/BARCODE", "sensitivityScore": { "score": "SENSITIVITY_LOW" } }, "likelihood": "LIKELY", "location": { "contentLocations": [ { "imageLocation": { "boundingBoxes": [ { "top": 569, "left": 666, "width": 306, "height": 274 } ] } } ] }, "createTime": "2025-05-22T22:25:09.564762Z", "findingId": "2025-05-22T22:25:09.564762Z1655085669963455621" } ] } }
Consulta la guía de inicio rápido de JSON para obtener más información sobre el uso de la API de DLP con JSON.
Ejemplos de código
A continuación se muestra un código de ejemplo en varios lenguajes que demuestra cómo utilizar la Protección de Datos Sensibles para inspeccionar una imagen en busca de datos sensibles.
C#
Para obtener información sobre cómo instalar y usar la biblioteca cliente de Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para 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 Sensitive Data Protection, consulta las bibliotecas cliente de Sensitive Data Protection.
Para autenticarte en Sensitive Data Protection, configura las credenciales predeterminadas de la aplicación. Para obtener más información, consulta Configura la autenticación para un entorno de desarrollo local.
Probarlo
Puedes probar cada uno de estos ejemplos o experimentar con tus propias imágenes en el Explorador de API en la página de referencia de content.inspect:
¿Qué sigue?
- Obtén más información sobre el ocultamiento y la inspección de imágenes.
- Obtén información sobre cómo ocultar datos sensibles en imágenes.