Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card
Plataforma de consentimiento del paciente para apps de salud
Consentimiento integrado en la capa de datos: ámbitos de OAuth 2.1 y SMART, propósito y caducidad elegidos por la persona, un registro de acceso que puede ver, revocación en la siguiente solicitud y qué sigue siendo propiedad de su app.
Una plataforma de consentimiento del paciente permite a una persona decidir qué aplicaciones pueden leer o modificar su historial médico, con qué propósito y durante cuánto tiempo, y les permite ver y revocar ese acceso en cualquier momento. Anpheros integra el consentimiento en la capa de datos: una aplicación accede al registro FHIR R4 de un paciente solo a través de una concesión que la persona aprobó en la página de consentimiento de Anpheros, cada lectura y escritura bajo esa concesión se registra donde la persona puede verlo, y la revocación entra en vigor en la siguiente solicitud. Esta página muestra cómo funciona, qué debe hacer su aplicación y qué no necesita construir.
- 1 · Your app asksOAuth 2.1 with PKCE: SMART scopes, a purpose and the patient's language
- 2 · The person decidesOn the Anpheros consent page: what, for whom and for how long — 30, 90, 180 or 365 days
- 3 · Your app readsOne patient's record, only the granted resource types and categories
- 4 · Every access is loggedThe person sees each read and write by your application
- 5 · The person revokesThe next request fails; a refresh token cannot bring access back
Por qué el consentimiento pertenece a la capa de datos
La mayoría de las aplicaciones de salud registran el consentimiento como una casilla de verificación en su propia base de datos y luego lo aplican en el código de la aplicación. Esto funciona hasta que una segunda aplicación, una integración clínica o una función de IA necesita los mismos datos: cada una debe reimplementar las reglas, y la persona no tiene un lugar único para ver quién tiene acceso. Cuando la plataforma que almacena el registro también aplica el consentimiento, cada cliente obtiene las mismas reglas y la persona obtiene una lista de aplicaciones para revisar.
| Consentimiento como indicador en su aplicación | Consentimiento en la capa de datos (Anpheros) | |
|---|---|---|
| Dónde se aplica | En el código de cada aplicación | En cada solicitud de API, por la plataforma |
| Alcance del acceso | Lo que la aplicación decida leer | Solo los tipos de recursos y categorías concedidos |
| Caducidad | Raramente implementado | Elegido por la persona: 30, 90, 180 o 365 días |
| Lo que la persona ve | Depende de la aplicación | Cada aplicación, sus alcances y caducidad, y un registro de acceso |
| Revocación | Debe propagarse manualmente | La siguiente solicitud falla; el token de actualización deja de funcionar |
Lo que el paciente controla
Cómo tu aplicación solicita consentimiento
Anpheros utiliza OAuth 2.1 con PKCE y ámbitos de SMART on FHIR v2. Tu aplicación envía a la persona a la página de consentimiento con los ámbitos que necesita y un propósito opcional; después de la aprobación, recibe un token de acceso (30 minutos) y un token de actualización rotatorio (30 días) para exactamente un paciente.
import { OAuthFlow, generatePkce } from '@anpheros/sdk';
const flow = new OAuthFlow({
baseUrl: 'https://platform.anpheros.com',
clientId: process.env.ANPHEROS_CLIENT_ID!,
redirectUri: 'https://your.app/callback',
});
const pkce = await generatePkce();
const url = flow.authorizeUrl({
scopes: ['patient/Observation.rs?category=laboratory', 'patient/Condition.rs', 'offline_access'],
purpose: 'treatment',
state: crypto.randomUUID(),
pkce,
lang: 'en',
});
// redirect the person to `url`; on the callback exchange the code (see the authentication guide)
Un ámbito como patient/Observation.rs?category=laboratory limita la lectura a los resultados de laboratorio; el filtro de categoría es aplicado por el servidor. Un tipo de recurso fuera de la concesión devuelve 403; un paciente fuera de la concesión devuelve 404, por lo que los IDs no pueden ser sondeados.
Reaccionando a la revocación
Cuando la persona finaliza una concesión, la siguiente solicitud con ese token falla y el token de actualización no puede restaurar el acceso. Para limpiar de inmediato, suscríbase al webhook consent.revoked, que transporta el grant_id, el ID del paciente que ve, los ámbitos y revoked_at.
await anpheros.webhooks.create('https://your.app/anpheros/hook', { events: ['consent.granted', 'consent.revoked'] });
Lo que Anpheros no hace
- No recopila consentimiento para fines ajenos al acceso a datos, como marketing o participación en investigación.
- No decide su base legal. El consentimiento para el acceso es un control; su aviso de privacidad, contratos y registros de procesamiento siguen siendo suyos.
- La clave API propia de un proyecto ve los pacientes que ese proyecto creó, sin una concesión. El consentimiento rige el acceso por parte de otras aplicaciones.
Preguntas frecuentes
¿Qué es una plataforma de consentimiento del paciente?
Software que registra qué aplicaciones una persona permite acceder a sus datos de salud, aplica esas elecciones en cada solicitud, muestra a la persona quién accedió a qué y le permite retirar el acceso. En Anpheros, el consentimiento es parte del registro FHIR R4 en sí mismo en lugar de un servicio separado.
¿Qué estándares utiliza Anpheros para el consentimiento del paciente?
OAuth 2.1 con PKCE para el flujo de autorización y los ámbitos de paciente SMART on FHIR v2 (patient/<Type>.<cruds> con un filtro opcional ?category=) para lo que una aplicación puede leer o escribir. OpenID Connect agrega un ID token cuando solicita openid fhirUser.
¿Puede un paciente limitar el acceso solo a algunos de sus datos?
Sí. El acceso se limita a los tipos de recursos y categorías en los ámbitos otorgados, por ejemplo, solo Observaciones de laboratorio. Todo lo demás devuelve un error.
¿Cuánto dura el consentimiento?
La persona elige 30, 90, 180 o 365 días en la página de consentimiento. Después de eso, la concesión expira y la aplicación debe volver a solicitarla.
¿Puede el paciente ver lo que una aplicación hizo con el acceso?
Sí. La persona ve cada aplicación con acceso, sus ámbitos y fecha de caducidad, y un registro de acceso que enumera lo que cada aplicación leyó o escribió.
¿Qué sucede cuando se revoca el consentimiento?
La siguiente solicitud con ese access token falla, el refresh token no se puede usar para obtener uno nuevo, y su servidor recibe un webhook consent.revoked si está suscrito.
Relacionado
- Modelo de consentimiento y acceso: las reglas completas
- Autenticación y OAuth: tokens, ámbitos y el intercambio de códigos
- Cómo implementar el consentimiento del paciente con SMART on FHIR
- Webhooks:
consent.grantedyconsent.revoked - Procedencia de datos médicos explicada
- API de datos longitudinales del paciente
Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card