# Žiadosti o prístup do ambulancie so súhlasom pacienta (CIBA)

> Tok OpenID CIBA za žiadosťami o prístup do ambulancie: recepcia zadá e-mail pacienta, pacient schváli v aplikácii alebo e-mailom na 30, 90 alebo 365 dní a aplikácia ambulancie prijme tokeny.

Source: https://developers.anpheros.com/sk/guides/clinic-access-request

**Ambulancia získa prístup k záznamu pacienta v Anpheros iba vtedy, keď ho pacient schváli.** Aplikácia ambulancie odošle žiadosť s uvedením e-mailovej adresy pacienta a požadovaného prístupu. Pacient ju dostane v aplikácii Anpheros a e-mailom, vidí, kto a o čo žiada, zvolí si, na ako dlho povolí prístup, a schváli alebo odmietne. Ak schváli, aplikácia ambulancie prijme tokeny a môže čítať záznam, kým prístup nevyprší alebo ho pacient neodvolá.

Tok je štandardný tok OpenID Connect Client-Initiated Backchannel Authentication (CIBA) v režime poll. Existuje preto, aby recepcia nemusela pacientovi podávať telefón alebo odkaz: žiadosť ide pacientovi, nie cez obrazovku ambulancie.

## Kroky

1. **Recepcia zadá e-mail pacienta.** Klinická aplikácia zavolá `POST /oauth/bc-authorize` s prihlasovacími údajmi klienta, e-mailom pacienta ako `login_hint`, `scope`, ktoré potrebuje, a krátkym `binding_message`, ktoré uvidí pacient.
2. **Platforma odpovedá rovnako pre každú adresu.** Odpoveď obsahuje `auth_req_id`, dátum vypršania platnosti a interval dotazovania, bez ohľadu na to, či daný e-mail má účet Anpheros. Neodhalí, kto má záznam. Požiadavka na osobu bez účtu jednoducho vyprší.
3. **Pacient sa rozhodne.** Dostane oznámenie v aplikácii Anpheros a e-mail. Požiadavka zobrazuje organizáciu, rozsah a správu. Vyberie si obdobie 30, 90 alebo 365 dní a stlačí povoliť alebo odmietnuť. Odkaz v e-maile nič neschvaľuje, keď je otvorený, pretože skenery e-mailov otvárajú odkazy; pacient musí stlačiť tlačidlo.
4. **Klinika sa dotazuje.** Aplikácia zavolá `POST /oauth/token` s typom grantu `urn:openid:params:grant-type:ciba` a `auth_req_id`. Kým sa pacient nerozhodol, odpoveď je `authorization_pending`. Po schválení sa tokeny vrátia raz. Odmietnutie vráti `access_denied` a neodpovedaná požiadavka vráti `expired_token`.
5. **Klinika číta a zapisuje v rámci udeleného rozsahu.** Každé čítanie je zaznamenané a viditeľné pre pacienta. Klinika môže meniť alebo mazať iba to, čo sama zapísala.

## Čo chráni pacienta

- **Iba overený e-mail.** Požiadavka zodpovedá iba účtu, ktorého e-mail je overený, takže nikto nemôže prijímať požiadavky inej osoby vytvorením účtu s jej adresou.
- **Rozsahovo a časovo obmedzené.** Prístup je na typ zdroja a akciu, na stanovené obdobie. Požiadavka, na ktorú nikto neodpovie, vyprší štandardne do jedného dňa a maximálne do siedmich dní.
- **Kedykoľvek odvolateľné.** Odvolanie nadobúda účinnosť pri ďalšej požiadavke. Klinika sa nemôže obnovením vrátiť späť.
- **Viditeľné.** Pacient vidí každé pripojenie a každý prístup v aplikácii. Pozri [model súhlasu a prístupu](https://developers.anpheros.com/sk/guides/consent).

## Čo klinika potrebuje na zostavenie

- Dôverný OAuth klient zaregistrovaný na platforme, ktorého tajný kľúč je uchovávaný na serveri.
- Slučka na opakované zisťovanie stavu (polling loop), ktorá rešpektuje interval a spracúva štyri možné výsledky.
- Spôsob, ako zobraziť rozhodnutie pacienta recepcii ("čaká sa na pacienta", "schválené do …", "odmietnuté").
- Spracovanie vrátených tokenov ako krátkodobých poverení: prístupové tokeny platia 30 minút a obnovovacie tokeny sa pri každom použití menia. Pozri [autentizácia a OAuth](https://developers.anpheros.com/sk/guides/authentication).

Pre kliniku, ktorá preferuje otvoriť stránku súhlasu pred pacientom, napríklad pri pulte, je podporovaný aj štandardný tok autorizačného kódu s PKCE a samostatné spustenie SMART on FHIR.

## Často kladené otázky

### Musí byť pacient v ambulancii?

Nie. Môžu súhlasiť zo svojho telefónu alebo prostredníctvom odkazu v e-maile, nech sú kdekoľvek. Požiadavka teda môže byť odoslaná pred návštevou a pacient, ktorý je v zahraničí, ju stále môže schváliť.

### Čo ak pacient nemá účet Anpheros?

Požiadavka je prijatá a potom vyprší bez rozhodnutia a ambulancia nemôže zistiť, či účet existuje. Pacient si môže vytvoriť účet a ambulancia môže poslať novú požiadavku.

### Ako dlho trvá prístup?

Pacient si pri schvaľovaní vyberie 30, 90 alebo 365 dní. Môže ho kedykoľvek odvolať skôr.

### Môže ambulancia vidieť všetko v zázname?

Iba rozsah, s ktorým pacient súhlasil. Rozsahy sú nastavené pre každý typ zdroja a akciu a môžu byť filtrované podľa kategórie.

### Je proces žiadosti štandardný?

Áno. Je to OpenID Connect CIBA, takže je možné použiť existujúce knižnice OAuth. Pozrite si príručku [API pre zdravotníctvo s pacientovým súhlasom](https://developers.anpheros.com/sk/guides/healthcare-api-patient-consent) pre širší model.

### Je to živé?

Áno, na platforme v súkromnej beta verzii. Prístup do produkcie vyžaduje overenú organizáciu a podpísanú dohodu o spracovaní údajov.

## Súvisiace

- [Platforma pre dáta pacientov pre kliniky a nemocnice](https://developers.anpheros.com/sk/guides/clinics-and-hospitals)
- [Platforma pre súhlas pacienta pre zdravotnícke aplikácie](https://developers.anpheros.com/sk/guides/patient-consent-platform)
- [Ako implementovať súhlas pacienta pomocou SMART on FHIR](https://developers.anpheros.com/sk/guides/smart-on-fhir-backend)
- [Bezpečnosť, ochrana súkromia a lokalita dát](https://developers.anpheros.com/sk/guides/security)
