Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card
Piattaforma di consenso del paziente per app sanitarie
Consenso integrato nel livello dati: ambiti OAuth 2.1 e SMART, finalità e scadenza scelte dalla persona, un registro accessi che può visualizzare, revoca alla richiesta successiva e cosa la tua app possiede ancora.
Una piattaforma di consenso del paziente consente a una persona di decidere quali applicazioni possono leggere o modificare la propria cartella clinica, per quale scopo e per quanto tempo, e consente loro di visualizzare e revocare tale accesso in qualsiasi momento. Anpheros integra il consenso nel livello dati: un'applicazione accede al record FHIR R4 di un paziente solo tramite un'autorizzazione approvata dalla persona sulla pagina di consenso di Anpheros, ogni lettura e scrittura sotto tale autorizzazione viene registrata dove la persona può vederla, e la revoca ha effetto alla richiesta successiva. Questa pagina mostra come funziona, cosa deve fare la tua applicazione e cosa non deve costruire.
- 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
Perché il consenso appartiene al livello dati
La maggior parte delle app sanitarie registra il consenso come una casella di controllo nel proprio database e poi lo applica nel codice dell'applicazione. Questo funziona finché una seconda app, un'integrazione clinica o una funzionalità AI necessita degli stessi dati: ognuna deve reimplementare le regole e la persona non ha un unico posto dove vedere chi ha accesso. Quando la piattaforma che memorizza il record applica anche il consenso, ogni client ottiene le stesse regole e la persona ottiene un elenco di applicazioni da rivedere.
| Consenso come flag nella tua app | Consenso nel livello dati (Anpheros) | |
|---|---|---|
| Dove viene applicato | Nel codice di ciascuna applicazione | Su ogni richiesta API, dalla piattaforma |
| Ambito di accesso | Qualsiasi cosa l'app decida di leggere | Solo i tipi di risorsa e le categorie concesse |
| Scadenza | Raramente implementata | Scelta dalla persona: 30, 90, 180 o 365 giorni |
| Cosa vede la persona | Dipende dall'app | Ogni applicazione, i suoi ambiti e la scadenza, e un registro degli accessi |
| Revoca | Deve essere propagata manualmente | La richiesta successiva fallisce; il token di aggiornamento smette di funzionare |
Cosa controlla il paziente
Come la tua applicazione richiede il consenso
Anpheros utilizza OAuth 2.1 con PKCE e ambiti SMART on FHIR v2. La tua app invia la persona alla pagina di consenso con gli ambiti di cui ha bisogno e uno scopo opzionale; dopo l'approvazione riceve un token di accesso (30 minuti) e un token di aggiornamento rotante (30 giorni) per un solo paziente.
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 ambito come patient/Observation.rs?category=laboratory limita la lettura ai risultati di laboratorio; il filtro per categoria è applicato dal server. Un tipo di risorsa al di fuori della concessione restituisce 403; un paziente al di fuori della concessione restituisce 404, quindi gli ID non possono essere sondati.
Reagire alla revoca
Quando la persona termina una concessione, la richiesta successiva con quel token fallisce e il token di aggiornamento non può ripristinare l'accesso. Per una pulizia immediata, iscriviti al webhook consent.revoked, che trasporta grant_id, l'ID paziente che vedi, gli ambiti e revoked_at.
await anpheros.webhooks.create('https://your.app/anpheros/hook', { events: ['consent.granted', 'consent.revoked'] });
Cosa Anpheros non fa
- Non raccoglie consensi per scopi diversi dall'accesso ai dati, come marketing o partecipazione a ricerche.
- Non decide la tua base giuridica. Il consenso all'accesso è un controllo; la tua informativa sulla privacy, i contratti e i registri di elaborazione rimangono tuoi.
- La chiave API di un progetto vede i pazienti creati da quel progetto, senza una concessione. Il consenso regola l'accesso da parte di altre applicazioni.
Domande frequenti
Cos'è una piattaforma di consenso del paziente?
Software che registra quali applicazioni una persona consente di accedere ai propri dati sanitari, applica tali scelte a ogni richiesta, mostra alla persona chi ha avuto accesso a cosa e consente loro di revocare l'accesso. In Anpheros, il consenso fa parte del record FHIR R4 stesso anziché essere un servizio separato.
Quali standard utilizza Anpheros per il consenso del paziente?
OAuth 2.1 con PKCE per il flusso di autorizzazione e gli ambiti paziente SMART on FHIR v2 (patient/<Type>.<cruds> con un filtro opzionale ?category=) per ciò che un'applicazione può leggere o scrivere. OpenID Connect aggiunge un ID token quando si richiede openid fhirUser.
Un paziente può limitare l'accesso solo ad alcuni dei propri dati?
Sì. L'accesso è limitato ai tipi di risorsa e alle categorie negli ambiti concessi, ad esempio solo alle Osservazioni di laboratorio. Tutto il resto restituisce un errore.
Quanto dura il consenso?
La persona sceglie 30, 90, 180 o 365 giorni nella pagina del consenso. Dopodiché la concessione scade e l'applicazione deve richiederla nuovamente.
Il paziente può vedere cosa ha fatto un'applicazione con l'accesso?
Sì. La persona vede ogni applicazione con accesso, i suoi ambiti e la scadenza, e un registro degli accessi che elenca ciò che ogni applicazione ha letto o scritto.
Cosa succede quando il consenso viene revocato?
La richiesta successiva con quel token di accesso fallisce, il token di aggiornamento non può essere utilizzato per ottenerne uno nuovo e il tuo server riceve un webhook consent.revoked se è sottoscritto.
Correlati
- Modello di consenso e accesso: le regole complete
- Autenticazione e OAuth: token, scope e scambio del codice
- Come implementare il consenso del paziente con SMART on FHIR
- Webhook:
consent.grantedeconsent.revoked - Provenienza dei dati medici spiegata
- API per dati longitudinali del paziente
Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card