En esta página se describe la API Consent Management y cómo usarla para gestionar el consentimiento y la privacidad de los usuarios.
La API Consent Management es un componente de tu arquitectura de consentimiento y privacidad, y proporciona una gestión escalable y segura del consentimiento y la privacidad de los datos de tus usuarios. La API Consent Management almacena la información de consentimiento que recibes de los usuarios, registra qué datos se permiten para cada caso práctico y ayuda a tu aplicación a utilizar los datos solo según las indicaciones de los usuarios.
Flujo de información de la API Consent Management
El flujo de información sobre el consentimiento y la privacidad en la API Consent Management es el siguiente:
- Tu aplicación muestra opciones de privacidad a un usuario y, a continuación, crea o revisa un registro de consentimiento en la API Consent Management para representar la decisión de ese usuario.
- Cuando tu aplicación escribe datos en sus distintos almacenes de datos, registra la ubicación y las características de esos datos con tu instancia de la API Consent Management.
- Cuando una aplicación necesita determinar si se ha obtenido el consentimiento para un caso práctico concreto, envía una solicitud a la API Consent Management con los datos solicitados y el uso propuesto.
- La API Consent Management compara los datos solicitados y el uso propuesto con los consentimientos almacenados y devuelve una respuesta positiva si existe un consentimiento válido. Se devuelve una respuesta negativa si no existe un consentimiento válido.
En el siguiente diagrama se muestra el flujo de información de la API Consent Management:
Para obtener más información sobre cómo se organizan los datos de consentimiento en la API Consent Management, consulta el modelo de datos de la API Consent Management.
Punto de decisión de la política
La API Consent Management actúa como punto de decisión de la política en tu arquitectura de consentimiento y privacidad de la siguiente manera:
- Almacena las políticas de consentimiento concedidas por los usuarios de tus aplicaciones.
- Acepta las consultas de acceso a datos realizadas por aplicaciones cliente autorizadas.
- Evalúa las consultas de acceso en función de las políticas de consentimiento almacenadas.
- Toma decisiones sobre el acceso para aplicar las políticas de consentimiento de las aplicaciones cliente.
Cumplimiento de políticas
La API Consent Management admite la aplicación de políticas en tu arquitectura de consentimiento y privacidad de la siguiente manera:
- Procesa las consultas de determinación de acceso realizadas por aplicaciones o puntos de control de políticas.
- Evalúa si se puede acceder a un recurso para un fin concreto.
- Determina todos los recursos a los que se puede acceder para un fin concreto.
- Vincula recursos a atributos y políticas de consentimiento para que los puntos de aplicación solo tengan que especificar atributos de solicitud y un nombre de recurso opcional.
- Devuelve determinaciones de acceso usando el estado de consentimiento actual, incluso cuando se añaden, actualizan o revocan consentimientos.
Puede implementar más de un patrón de implementación de políticas mediante la API Consent Management en su arquitectura de consentimiento y privacidad. En la siguiente lista se muestran ejemplos de patrones de cumplimiento de las políticas:
- Aplicación por parte de aplicaciones de confianza. Las aplicaciones que hayan verificado la identidad y las cualificaciones de un usuario pueden reenviar las propiedades pertinentes a la API Consent Management. De esta forma, los usuarios pueden enviar o actualizar consentimientos, y las aplicaciones con cualificaciones verificadas pueden acceder solo a la información para la que se ha dado el consentimiento para su caso práctico.
- Cumplimiento por parte del middleware del cliente. Las aplicaciones que requieren la verificación de la identidad y las cualificaciones de un usuario pueden usar la API Consent Management para determinar si se permite el acceso a una solicitud determinada.
- Cumplimiento por parte de los servidores de recursos. Los servidores de recursos pueden usar la identidad de un usuario para obtener cualificaciones de otras aplicaciones, si es necesario, y, a continuación, llamar a la API Consent Management para determinar el acceso antes de completar las solicitudes.
Representación de la política
Las políticas de consentimiento de la API Consent Management se componen de un conjunto de valores de atributos de recursos que definen a qué datos se aplica la política y de una regla de autorización que define las condiciones en las que la política es válida.
Cuando se especifican varios valores para un atributo de recurso, la política se aplica a los datos que coincidan con cualquiera de esos valores. Cuando aparecen varios atributos de recurso en una política, cada uno de ellos debe coincidir para que se aplique la política.
Las reglas de autorización usan una variación restringida del lenguaje de expresión común (CEL) para describir de forma flexible las relaciones entre los valores de los atributos de solicitud que permiten el acceso a los datos pertinentes. Para obtener más información sobre CEL, consulta Lenguaje de expresión común.
Los recursos de consentimiento pueden contener varias políticas de consentimiento que podrían representar una respuesta positiva a las preguntas de consentimiento que se le presentan a un usuario. Las políticas de consentimiento también se pueden usar para representar formularios de consentimiento completos o decisiones organizativas y administrativas.
En el siguiente diagrama se muestra cómo se representan las políticas en la API Consent Management:
En este diagrama se muestra cómo crear políticas de consentimiento sencillas mediante atributos de recursos y de solicitudes. Puedes crear políticas más complejas combinando dos o más políticas.
Registros de consentimiento
La API Consent Management almacena los siguientes tipos de registros de consentimiento:
- Artefactos de consentimiento: almacenan los documentos que el usuario ha aceptado o firmado. Estos registros pueden contener archivos PDF o imágenes de las pantallas que se muestran al usuario durante el proceso de consentimiento. También se pueden usar para almacenar firmas, marcas de tiempo y otra información importante que documente el proceso de consentimiento.
- Recursos de consentimiento: describen el consentimiento que ha dado el usuario en términos de los atributos de consentimiento configurados. La API Consent Management evalúa estos registros para determinar si se ha obtenido el consentimiento para un caso práctico. Los recursos de consentimiento contienen el consentimiento concedido y el estado del consentimiento. Estos registros también se pueden vincular a los artefactos de consentimiento correspondientes.
Para obtener más información sobre los registros de consentimiento, consulta el artículo Crear y actualizar consentimientos de usuarios.
Gestión de los datos
La API Consent Management puede gestionar los datos almacenados en tus propios esquemas en Google Cloud, en un entorno local o con otro proveedor de servicios en la nube, siempre que los datos se puedan describir con una cadena. La API Consent Management usa asignaciones de datos de usuario para monitorizar los datos gestionados sin que sea necesario almacenarlos en el propio servicio.
Cada asignación de datos de usuario contiene un ID de datos, un ID de usuario y un conjunto de valores de atributos de recursos. El ID de datos es una cadena que identifica de forma única los datos representados por la asignación de datos de usuario. El ID de usuario es un identificador opaco que vincula esos datos a un usuario. Los valores de los atributos de recursos describen las características de los datos mediante un vocabulario definido por los recursos de definición de atributos.
Estas son las ubicaciones de almacenamiento habituales de los datos gestionados con el consentimiento:
- Almacenes FHIR
- BigQuery
- Cloud Storage
Para obtener más información sobre cómo crear asignaciones de datos de usuario, consulta el artículo Registrar datos de usuario.
Determinación del acceso
Las solicitudes de determinación de acceso las realizan las aplicaciones que necesitan saber si el uso propuesto tiene permiso para acceder a un elemento de datos específico, a todos los elementos de datos asociados a un usuario o a almacenes de datos completos. La API Consent Management determina si una solicitud está permitida evaluando si hay o no un consentimiento válido que conceda permiso para los datos especificados y el uso propuesto. La API Consent Management realiza esta evaluación de la siguiente manera:
- La API Consent Management recibe una solicitud de determinación de acceso con valores de atributo de solicitud para el uso propuesto y un recurso de destino o un intervalo de recursos de destino descritos por IDs de usuario o valores de atributo de recurso.
- Si se especifica un intervalo de recursos de destino, la API Consent Management determina los recursos que coinciden con el intervalo. Por ejemplo, si defines un intervalo de valores de atributos de recursos, todos los recursos de ese intervalo se usarán en la solicitud de determinación de acceso.
- Se identifican los consentimientos de todos los recursos coincidentes.
- El uso propuesto se evalúa en función de las reglas de autorización de los consentimientos pertinentes.
- Si alguna de las reglas de autorización permite esta combinación de valores de atributos de solicitud, se devuelve una determinación de acceso positiva para cada recurso evaluado.
De forma predeterminada, la determinación del acceso solo se realiza en los consentimientos activos. Los consentimientos en estado de borrador se pueden incluir en la determinación del acceso especificándolos directamente en la solicitud de determinación del acceso. Los consentimientos que han caducado, se han revocado o se han rechazado se ignoran en todas las solicitudes de determinación de acceso.
Para obtener más información sobre cómo enviar solicitudes de determinación de acceso, consulta el artículo Determinar el acceso.