AnpherosAnpheros PlatformDevelopers

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

Platforma zgód pacjenta dla aplikacji medycznych

Zgody wbudowane w warstwę danych: zakresy OAuth 2.1 i SMART, cel i termin ważności wybrane przez użytkownika, dziennik dostępu, możliwość odwołania przy kolejnym żądaniu i co nadal należy do Twojej aplikacji.

Platforma zgody pacjenta pozwala osobie decydować, które aplikacje mogą odczytywać lub zmieniać jej historię medyczną, w jakim celu i jak długo, a także pozwala jej w dowolnym momencie przeglądać i cofać ten dostęp. Anpheros wbudowuje zgodę w warstwę danych: aplikacja uzyskuje dostęp do rekordu FHIR R4 pacjenta tylko poprzez zgodę zatwierdzoną przez użytkownika na stronie zgody Anpheros, każde odczytanie i zapis w ramach tej zgody jest rejestrowane w miejscu, do którego użytkownik ma dostęp, a cofnięcie zgody wchodzi w życie przy następnym żądaniu. Ta strona pokazuje, jak to działa, co musi zrobić Twoja aplikacja i czego nie musi budować.

How one consent works, end to end
  1. 1 · Your app asksOAuth 2.1 with PKCE: SMART scopes, a purpose and the patient's language
  2. 2 · The person decidesOn the Anpheros consent page: what, for whom and for how long — 30, 90, 180 or 365 days
  3. 3 · Your app readsOne patient's record, only the granted resource types and categories
  4. 4 · Every access is loggedThe person sees each read and write by your application
  5. 5 · The person revokesThe next request fails; a refresh token cannot bring access back

Dlaczego zgoda należy do warstwy danych

Większość aplikacji medycznych rejestruje zgodę jako pole wyboru we własnej bazie danych, a następnie egzekwuje ją w kodzie aplikacji. Działa to do momentu, gdy druga aplikacja, integracja kliniczna lub funkcja AI potrzebuje tych samych danych: każda z nich musi ponownie zaimplementować zasady, a osoba nie ma jednego miejsca, aby zobaczyć, kto ma dostęp. Kiedy platforma, która przechowuje rekord, egzekwuje również zgodę, każdy klient otrzymuje te same zasady, a osoba otrzymuje jedną listę aplikacji do przeglądu.

Zgoda jako flaga w Twojej aplikacji Zgoda w warstwie danych (Anpheros)
Gdzie jest egzekwowana W kodzie każdej aplikacji Przy każdym żądaniu API, przez platformę
Zakres dostępu Cokolwiek aplikacja zdecyduje się odczytać Tylko przyznane typy zasobów i kategorie
Wygaśnięcie Rzadko implementowane Wybrane przez osobę: 30, 90, 180 lub 365 dni
Co widzi osoba Zależy od aplikacji Każda aplikacja, jej zakresy i wygaśnięcie oraz dziennik dostępu
Odwołanie Musi być propagowane ręcznie Następne żądanie kończy się niepowodzeniem; token odświeżania przestaje działać

Co kontroluje pacjent

What the patient controls
WhoEach application is listed by name with its own grant
WhatResource types and categories, e.g. only laboratory Observations
WhyThe purpose your app declares is shown on the consent page
How long30, 90, 180 or 365 days; access ends by itself
What happenedAn access log of every read and write under the grant
StopRevocation takes effect on the next request

Jak Twoja aplikacja prosi o zgodę

Anpheros używa OAuth 2.1 z PKCE i zakresów SMART on FHIR v2. Twoja aplikacja wysyła użytkownika na stronę zgody z wymaganymi zakresami i opcjonalnym celem; po zatwierdzeniu otrzymuje token dostępu (30 minut) i rotujący token odświeżania (30 dni) dla dokładnie jednego pacjenta.

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)

Zakres taki jak patient/Observation.rs?category=laboratory ogranicza odczyt do wyników laboratoryjnych; filtr kategorii jest egzekwowany przez serwer. Typ zasobu spoza udzielonego dostępu zwraca 403; pacjent spoza udzielonego dostępu zwraca 404, więc identyfikatory nie mogą być badane.

Reagowanie na odwołanie

Gdy osoba zakończy udzielenie dostępu, następne żądanie z tym tokenem zakończy się niepowodzeniem, a token odświeżający nie będzie w stanie przywrócić dostępu. Aby natychmiast posprzątać, zasubskrybuj webhook consent.revoked, który zawiera grant_id, identyfikator pacjenta, który widzisz, zakresy i revoked_at.

await anpheros.webhooks.create('https://your.app/anpheros/hook', { events: ['consent.granted', 'consent.revoked'] });

Czego Anpheros nie robi

Często zadawane pytania

Czym jest platforma zgody pacjenta?

Oprogramowanie, które rejestruje, którym aplikacjom dana osoba zezwala na dostęp do swoich danych medycznych, egzekwuje te wybory przy każdym żądaniu, pokazuje osobie, kto uzyskał dostęp do czego i pozwala jej wycofać dostęp. W Anpheros zgoda jest częścią samego rekordu FHIR R4, a nie osobną usługą.

Jakich standardów Anpheros używa do zarządzania zgodą pacjenta?

OAuth 2.1 z PKCE dla przepływu autoryzacji i zakresów pacjenta SMART on FHIR v2 (patient/<Type>.<cruds> z opcjonalnym filtrem ?category=) dla tego, co aplikacja może odczytywać lub zapisywać. OpenID Connect dodaje token identyfikacyjny, gdy poprosisz o openid fhirUser.

Czy pacjent może ograniczyć dostęp tylko do części swoich danych?

Tak. Dostęp jest ograniczony do typów zasobów i kategorii w przyznanych zakresach, na przykład tylko do obserwacji laboratoryjnych. Wszystko inne zwraca błąd.

Jak długo trwa zgoda?

Osoba wybiera 30, 90, 180 lub 365 dni na stronie zgody. Po tym czasie zgoda wygasa, a aplikacja musi poprosić ponownie.

Czy pacjent może zobaczyć, co aplikacja zrobiła z dostępem?

Tak. Osoba widzi każdą aplikację z dostępem, jej zakresy i datę wygaśnięcia, a także dziennik dostępu wymieniający, co każda aplikacja odczytała lub zapisała.

Co się dzieje po cofnięciu zgody?

Następne żądanie z tym tokenem dostępu kończy się niepowodzeniem, token odświeżania nie może być użyty do uzyskania nowego, a Twój serwer otrzymuje webhook consent.revoked, jeśli był subskrybowany.

Powiązane

Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card

Product updates by email

New features, guides and the end of the beta. One email a month at most.

Send me occasional Anpheros Platform updates by email (new features, API changes, guides). I'll confirm by email and can unsubscribe in one click from any email. Privacy