Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card
Platforma pro souhlas pacienta pro zdravotnické aplikace
Souhlas integrovaný do datové vrstvy: rozsahy OAuth 2.1 a SMART, účel a expirace zvolené osobou, přehled přístupů, který může vidět, odvolání při dalším požadavku a co vaše aplikace stále vlastní.
Platforma pro souhlas pacienta umožňuje osobě rozhodnout, které aplikace mohou číst nebo měnit její zdravotní záznamy, za jakým účelem a na jak dlouho, a umožňuje jí kdykoli tento přístup vidět a zrušit. Anpheros zabudovává souhlas do datové vrstvy: aplikace se k záznamu FHIR R4 pacienta dostane pouze prostřednictvím udělení, které osoba schválila na stránce souhlasu Anpheros, každé čtení a zápis v rámci tohoto udělení je zaznamenáno tam, kde si jej osoba může prohlédnout, a zrušení nabývá účinnosti při dalším požadavku. Tato stránka ukazuje, jak to funguje, co musí vaše aplikace udělat a co nemusí sestavovat.
- 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
Proč souhlas patří do datové vrstvy
Většina zdravotnických aplikací zaznamenává souhlas jako zaškrtávací políčko ve své vlastní databázi a poté jej vynucuje v aplikačním kódu. To funguje, dokud druhá aplikace, klinická integrace nebo funkce AI nepotřebuje stejná data: každá z nich musí znovu implementovat pravidla a osoba nemá jediné místo, kde by viděla, kdo má přístup. Když platforma, která ukládá záznam, také vynucuje souhlas, každý klient dostane stejná pravidla a osoba získá jeden seznam aplikací k revizi.
| Souhlas jako příznak ve vaší aplikaci | Souhlas v datové vrstvě (Anpheros) | |
|---|---|---|
| Kde je vynucován | V kódu každé aplikace | Při každém API požadavku, platformou |
| Rozsah přístupu | Cokoli se aplikace rozhodne číst | Pouze udělené typy a kategorie zdrojů |
| Vypršení platnosti | Zřídka implementováno | Vybráno osobou: 30, 90, 180 nebo 365 dní |
| Co osoba vidí | Závisí na aplikaci | Každá aplikace, její rozsahy a vypršení platnosti a protokol přístupu |
| Odvolání | Musí být propagováno ručně | Další požadavek selže; obnovovací token přestane fungovat |
Co pacient ovládá
Jak vaše aplikace žádá o souhlas
Anpheros používá OAuth 2.1 s PKCE a SMART on FHIR v2 scopes. Vaše aplikace odešle osobu na stránku souhlasu s potřebnými scopes a volitelným účelem; po schválení obdrží přístupový token (30 minut) a rotující obnovovací token (30 dní) pro přesně jednoho pacienta.
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)
Scope jako patient/Observation.rs?category=laboratory omezuje čtení na laboratorní výsledky; filtr kategorií je vynucen serverem. Typ zdroje mimo udělení vrátí 403; pacient mimo udělení vrátí 404, takže ID nelze zkoumat.
Reakce na odvolání
Když osoba ukončí udělení, další požadavek s tímto tokenem selže a obnovovací token nemůže obnovit přístup. Pro okamžité vyčištění se přihlaste k odběru webhooku consent.revoked, který nese grant_id, ID pacienta, které vidíte, obory a revoked_at.
await anpheros.webhooks.create('https://your.app/anpheros/hook', { events: ['consent.granted', 'consent.revoked'] });
Co Anpheros nedělá
- Neshromažďuje souhlas pro účely mimo přístup k datům, jako je marketing nebo účast ve výzkumu.
- Nerozhoduje o vaší právní základně. Souhlas s přístupem je jedním z kontrolních mechanismů; vaše oznámení o ochraně osobních údajů, smlouvy a záznamy o zpracování zůstávají vaše.
- Vlastní API klíč projektu vidí pacienty, které projekt vytvořil, bez udělení oprávnění. Souhlas řídí přístup jinými aplikacemi.
Často kladené dotazy
Co je platforma pro souhlas pacienta?
Software, který zaznamenává, kterým aplikacím osoba umožňuje přístup k jejím zdravotním údajům, vynucuje tato rozhodnutí při každém požadavku, ukazuje osobě, kdo k čemu přistupoval, a umožňuje jí přístup odvolat. V Anpheros je souhlas součástí samotného záznamu FHIR R4, nikoli samostatnou službou.
Jaké standardy Anpheros používá pro souhlas pacienta?
OAuth 2.1 s PKCE pro autorizační tok a SMART on FHIR v2 patient scopes (patient/<Type>.<cruds> s volitelným filtrem ?category=) pro to, co aplikace může číst nebo zapisovat. OpenID Connect přidává ID token, když požádáte o openid fhirUser.
Může pacient omezit přístup pouze k některým svým údajům?
Ano. Přístup je omezen na typy zdrojů a kategorie v udělených scopech, například pouze na laboratorní Observations. Vše ostatní vrátí chybu.
Jak dlouho souhlas platí?
Osoba si na stránce souhlasu vybírá 30, 90, 180 nebo 365 dní. Poté oprávnění vyprší a aplikace musí požádat znovu.
Může pacient vidět, co aplikace s přístupem udělala?
Ano. Osoba vidí každou aplikaci s přístupem, její scope a datum vypršení platnosti a log přístupů uvádějící, co každá aplikace přečetla nebo zapsala.
Co se stane, když je souhlas odvolán?
Další požadavek s tímto přístupovým tokenem selže, refresh token nelze použít k získání nového a váš server obdrží webhook consent.revoked, pokud se k němu přihlásil.
Související
- Model souhlasu a přístupu: pravidla v plném znění
- Autentizace a OAuth: tokeny, rozsahy a výměna kódu
- Jak implementovat souhlas pacienta pomocí SMART on FHIR
- Webhooks:
consent.grantedaconsent.revoked - Vysvětlení původu lékařských dat
- API pro longitudinální data pacienta
Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card