Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card
Медичний API зі згодою пацієнта
Як пацієнт надає доступ до запису через OAuth 2.1 скоупи та терміни дії, як це реєструється та відкликається, що це змінює в дизайні додатків, і як парні ідентифікатори розмежовують додатки.
API охорони здоров'я з дозволом пацієнта — це API, де доступ до запису надається пацієнтом, для певної мети, на певний час, і може бути переглянутий та відкликаний пацієнтом, а не вирішується один раз організацією, яка володіє даними. В Anpheros дозвіл не є полем, яке ви встановлюєте; це механізм, через який програма взагалі отримує доступ до запису. Цей посібник пояснює, як це працює для розробника, і що це змінює в дизайні програми.
Два способи доступу до запису
| Доступ через організацію | Доступ, наданий пацієнтом | |
|---|---|---|
| Хто надає дозвіл | ваша організація, через API ключ | пацієнт, через екран згоди OAuth 2.1 |
| Типове використання | клініка або лабораторія, що записує результати, ваш власний додаток, що записує від імені своїх користувачів | сторонній додаток, ШІ-асистент, інструмент лікаря, член сім'ї |
| Обсяг | пацієнти, створені вашою організацією, або ті, що були надані їй | обсяги, які пацієнт прийняв (patient/Observation.read, …) |
| Тривалість | поки ключ дійсний | тривалість, обрана пацієнтом; поновлювана, відкликана |
| Видимість для пацієнта | так, у журналі доступу | так, з можливістю відкликання |
Обидва шляхи проходять через той самий API та той самий FHIR запис. Різниця полягає в тому, хто тримає ключ до дверей.
Потік згоди, крок за кроком
- Ваш застосунок надсилає пацієнта до кінцевої точки авторизації Anpheros із необхідними областями дії (scopes) та причиною простими словами.
- Пацієнт бачить, що ви запитуєте, обирає тривалість та приймає або відхиляє. Екран відображається мовою пацієнта.
- Ви отримуєте токен доступу, обмежений цими областями дії та цим пацієнтом. Токени мають короткий термін дії; токени оновлення діють так само довго, як і згода.
- Кожне читання та запис за допомогою цього токена реєструється з назвою вашого застосунку. Пацієнт бачить журнал у своєму застосунку.
- Якщо пацієнт відкликає згоду, наступний запит завершується з чіткою помилкою. Ви отримуєте webhook, щоб мати можливість очистити дані.
Цей потік є стандартним OAuth 2.1 з PKCE та областями дії SMART on FHIR, тому існуючі бібліотеки працюватимуть. Посібник Автентифікація та OAuth містить точні параметри, а Модель згоди та доступу — правила, що стоять за цим.
Що це змінює у вашому додатку
- Ви запитуєте менше. Області дії (scopes) визначаються для кожного типу ресурсу та напрямку. Додаток, який відображає вагу, запитує
Observation.read, а не весь запис. - Ви проектуєте для відкликання. Доступ може бути припинено в будь-який час. Кешуйте мінімально, перечитуйте за потреби та обробляйте помилку відкликання як нормальний стан.
- Ви отримуєте довіру безкоштовно. Пацієнти бачать назву вашого додатку, до чого він має доступ і коли він востаннє читав дані. Додатки, які поводяться належним чином, легше прийняти.
- Ви пишете з походженням (provenance). Усе, що ви записуєте, містить ваш додаток як автора, а коли це доречно, і особу, від імені якої це зроблено. Пацієнт та інші додатки можуть відрізнити ваші дані від своїх.
Ідентифікатори, що не розкривають інформацію
Кожен додаток бачить пацієнта під парним ідентифікатором: одна й та сама особа матиме різний ID у вашому додатку та в іншому. Два додатки не можуть об'єднувати свої дані про особу без згоди пацієнта, навіть якщо обидва побудовані на Anpheros. Для вашого коду це непомітно; для пацієнта це різниця між згодою та формальністю.
Сім'ї та опікуни
Згода поширюється на осіб, які керують записами для інших: батько для дитини, доросла дитина для літнього батька. Запис залишається з обліковим записом, який його створив; інші облікові записи отримують доступ, який може бути відкликаний. Ваш додаток бачить той самий механізм згоди, де опікун є особою, яка приймає.
Пов'язане
- Модель згоди та доступу
- Автентифікація та OAuth
- Бекенд SMART on FHIR
- API для охорони здоров'я
- Безпека, конфіденційність та місцезнаходження даних
Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card