Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card
Запросы на доступ для клиник с одобрением пациента (CIBA)
Процесс OpenID CIBA для запросов на доступ для клиник: регистратура вводит адрес электронной почты пациента, пациент одобряет доступ в приложении или по электронной почте на 30, 90 или 365 дней, и приложение клиники получает токены.
Клиника получает доступ к записи пациента в Anpheros только после одобрения пациента. Приложение клиники отправляет запрос, указывающий адрес электронной почты пациента и необходимый уровень доступа. Пациент получает запрос в приложении Anpheros и по электронной почте, видит, кто и запрашивает, выбирает срок действия доступа и одобряет или отклоняет запрос. В случае одобрения приложение клиники получает токены и может читать запись до истечения срока действия доступа или его отзыва пациентом.
Этот поток является стандартным потоком OpenID Connect Client-Initiated Backchannel Authentication (CIBA) в режиме опроса. Он существует для того, чтобы регистратору не приходилось передавать пациенту телефон или ссылку: запрос направляется пациенту, а не через экран клиники.
Пошаговое руководство
- Регистратура вводит адрес электронной почты пациента. Приложение клиники вызывает
POST /oauth/bc-authorizeс учетными данными клиента, адресом электронной почты пациента в качествеlogin_hint,scope, которые ему необходимы, и краткимbinding_message, которое увидит пациент. - Платформа отвечает одинаково для каждого адреса. Ответ содержит
auth_req_id, срок действия и интервал опроса, независимо от того, есть ли у этого адреса электронной почты учетная запись Anpheros. Он не раскрывает, у кого есть запись. Запрос для человека без учетной записи просто истекает. - Пациент принимает решение. Он получает уведомление в приложении Anpheros и по электронной почте. Запрос показывает организацию, область действия и сообщение. Он выбирает период 30, 90 или 365 дней и нажимает «Разрешить» или «Отклонить». Ссылка в электронном письме ничего не подтверждает при открытии, потому что сканеры электронной почты открывают ссылки; пациент должен нажать кнопку.
- Клиника опрашивает. Приложение вызывает
POST /oauth/tokenс типом предоставленияurn:openid:params:grant-type:cibaиauth_req_id. Пока пациент не принял решение, ответ —authorization_pending. После одобрения токены возвращаются один раз. Отказ возвращаетaccess_denied, а неотвеченный запрос возвращаетexpired_token. - Клиника читает и записывает в пределах предоставленной области действия. Каждое чтение регистрируется и доступно для просмотра пациенту. Клиника может изменять или удалять только то, что она сама записала.
Что защищает пациента
- Только подтвержденный адрес электронной почты. Запрос соответствует только учетной записи, адрес электронной почты которой подтвержден, поэтому никто не может получать чужие запросы, создав учетную запись с их адресом.
- Ограниченный по области действия и времени. Доступ предоставляется для каждого типа ресурса и действия на указанный период. Запрос, на который никто не ответил, по умолчанию истекает в течение дня и максимум через семь дней.
- Может быть отозван в любое время. Отзыв вступает в силу при следующем запросе. Клиника не может восстановить доступ.
- Видимый. Пациент видит каждое соединение и каждый доступ в приложении. См. модель согласия и доступа.
Что необходимо клинике для разработки
- Конфиденциальный OAuth-клиент, зарегистрированный на платформе, с секретным ключом, хранящимся на сервере.
- Цикл опроса, который соблюдает интервал и обрабатывает четыре исхода.
- Способ отображения решения пациента на стойке регистрации ("ожидание пациента", "одобрено до …", "отказано").
- Обработка возвращаемых токенов как краткосрочных учетных данных: токены доступа действительны 30 минут, а токены обновления меняются при каждом использовании. См. аутентификация и OAuth.
Для клиники, которая предпочитает открывать страницу согласия перед пациентом, например, на стойке регистрации, также поддерживается стандартный поток кода авторизации с PKCE и автономный запуск SMART on FHIR.
Часто задаваемые вопросы
Должен ли пациент находиться в клинике?
Нет. Они могут одобрить запрос со своего телефона или по ссылке из электронного письма, где бы они ни находились. Таким образом, запрос может быть отправлен до приема, и пациент, находящийся за границей, все равно сможет его одобрить.
Что, если у пациента нет учетной записи Anpheros?
Запрос принимается, а затем истекает без решения, и клиника не может определить, существует ли учетная запись. Пациент может создать учетную запись, и клиника может отправить новый запрос.
Как долго действует доступ?
Пациент выбирает 30, 90 или 365 дней при одобрении. Они могут отозвать его раньше.
Может ли клиника видеть все в записи?
Только тот объем данных, который одобрил пациент. Объемы данных устанавливаются для каждого типа ресурса и действия и могут быть отфильтрованы по категориям.
Является ли поток запросов стандартным?
Да. Это OpenID Connect CIBA, поэтому могут использоваться существующие библиотеки OAuth. См. руководство по API для здравоохранения с согласием пациента для более широкой модели.
Это работает в реальном времени?
Да, на платформе в закрытом бета-тестировании. Для доступа к производственной среде требуется подтвержденная организация и подписанное соглашение об обработке данных.
Связанные материалы
- Платформа данных пациентов для клиник и больниц
- Платформа согласия пациента для приложений здравоохранения
- Как реализовать согласие пациента с помощью SMART on FHIR
- Безопасность, конфиденциальность и местоположение данных
Try it free in the sandbox · first FHIR call in 5 minutesFree · 30 synthetic patients · no card