Для разработчиков

Платформа согласия пациента: как согласие, области действия, срок действия и отзыв работают в API медицинских данных

Что должна делать платформа, помогающая с согласием пациента: согласие как объект первого класса с областями действия и сроком действия, немедленный отзыв, журнал доступа, который может прочитать пациент, и ИИ, который держит данные на утверждении. Как это реализует Anpheros.

автор Опубликовано 4 мин чтения

Согласие — это та часть медицинского продукта, которую никто не хочет разрабатывать, но все проходят проверку. «Пользователь поставил галочку при регистрации» не соответствует статье 9 GDPR, не выдерживает проверку защиты данных и не позволяет человеку отозвать доступ из одного приложения без удаления своей учетной записи. В этом руководстве описано, что должна делать платформа согласия пациента и как это делает Anpheros Platform, чтобы вы могли использовать ее вместо того, чтобы создавать с нуля.

Техническая версия для разработчиков: Платформа согласия пациента · Согласие на developers.anpheros.com с запросами, ответами и ограничениями. Эта страница — версия для широкой аудитории.

Согласие как объект, а не флаг

В Anpheros согласие — это разрешение: один человек, одно приложение, набор областей действия, цель, срок действия. Оно создается, когда человек одобряет доступ на странице согласия, отображается там, где человек может его увидеть, и может быть отозвано в любое время. Чтения проверяются на его соответствие при каждом запросе.

  • Области действия определяют, что приложение может читать или записывать: наблюдения, состояния, лекарства, аллергии, документы и т. д., опционально суженные по категориям (например, результаты лабораторных исследований, но не симптомы).
  • Продолжительность выбирается человеком: 30, 90, 180 или 365 дней. Нет опции «навсегда».
  • Отзыв вступает в силу при следующем запросе. Приложение получает вебхук consent.revoked.
  • Цель записывается вместе с разрешением и отображается человеку.

Как приложение запрашивает доступ

Через OAuth 2.1 с PKCE, с запуском SMART on FHIR в автономном режиме для приложений, которые уже поддерживают SMART. Человек входит в систему, видит, какое приложение запрашивает доступ, какие области действия и на какой срок, и одобряет или отклоняет запрос. Приложение получает токен, ограниченный этим конкретным пациентом и этими областями действия; ключ проекта никогда не заменяет согласие человека.

GET  https://platform.anpheros.com/oauth/authorize?client_id=…&scope=patient/Observation.read …
POST https://platform.anpheros.com/oauth/token

Токены доступа действительны 30 минут, токены обновления — 30 дней. Документы обнаружения находятся по адресам /.well-known/oauth-authorization-server и /.well-known/smart-configuration.

Что видит пациент

GET /me/patients/{id}/grants перечисляет все приложения с доступом, их области действия и срок действия. …/grants/{grant}/access-log перечисляет, что каждое из них читало или записывало, под согласием и с собственным ключом проекта. При использовании format=fhir журнал возвращается как Bundle ресурсов FHIR R4 AuditEvent, сформированных по шаблонам IHE Basic Audit Log Patterns. В Anpheros Daily это экран «Соединения»; ваше собственное приложение может отображать то же самое.

Чтение против записи

При наличии согласия организация видит всю запись, включая то, что написали другие клиники, но может изменять или удалять только то, что написала сама. Каждая версия каждого ресурса записывает проект, который ее создал; запись другим проектом отклоняется с объяснением. Каждая запись создает ресурс Provenance, указывающий приложение, организацию, от имени которой оно действовало, и человека.

AI-агенты предлагают, человек решает

Запись, сделанная под согласием человека приложением, зарегистрированным как AI-агент, не применяется немедленно. Платформа проверяет ее и отвечает 202 Accepted с идентификатором предложения; в записи ничего не меняется. Человек видит предложение, что это такое и какое приложение его отправило, и принимает или отклоняет его. Принятое предложение записывается точно так, как было отправлено, и помечается как созданное AI. Вот как помощник, подключенный через MCP, может помочь заполнить запись, никогда не записывая в нее без присмотра.

Человек также может поделиться своей записью через QR-код или ссылку. POST /me/patients/{id}/shl создает SMART Health Link для экстренного подмножества (аллергии, лекарства, проблемы, иммунизации) или полного Международного резюме пациента, с опциональным паролем и сроком действия. Каждое открытие регистрируется в журнале доступа, и ссылку можно мгновенно отключить. Любой считыватель SMART Health Link может ее открыть.

Полная модель со всеми правилами доступна на developers.anpheros.com/guides/consent-model.

Частые вопросы

Разрешение — это операционный объект, проверяемый при каждом запросе; запись также содержит ресурсы FHIR Consent и Provenance, чтобы другие системы могли прочитать, о чем было договорено и кто что написал. Журнал доступа доступен как FHIR AuditEvent.

Может ли пациент предоставить доступ только к части записи?

Да. Области действия определяются для каждого типа ресурса с фильтрами категорий, и человек выбирает их на странице согласия. Приложение может запросить только результаты лабораторных исследований или только лекарства.

Что происходит, когда срок действия согласия истекает?

Запросы по этому разрешению возвращают код 403 с момента истечения срока действия. Приложение может запросить доступ снова; человек решает снова. Ничего не удаляется.

Аннулирование удаляет то, что приложение уже прочитало?

Ни одна система не может «отменить чтение» данных. Аннулирование немедленно прекращает дальнейший доступ и регистрируется; то, что приложение сохранило на своей стороне, регулируется его собственными обязательствами в соответствии с GDPR.

Может ли клиника получить доступ к записи без согласия пациента?

Проект видит пациентов, которых он создал сам. Чтение записи, созданной другим источником, требует разрешения человека. Административного переопределения нет.

Это руководство носит информационный характер и не заменяет консультацию врача. Решения о своём здоровье принимайте вместе с врачом. В экстренной ситуации звоните 112.
Об авторе
Adrian Kereky

Основатель Anpheros. Инженер-электронщик, шесть лет работал в области автономного вождения, в автомобильных проектах в партнёрстве с Samsung и NVIDIA, над архитектурой систем помощи водителю и систем ИИ, работающих на чипах NVIDIA с CUDA. Затем создал Anpheros: медицинскую карту под контролем пациента и платформу HL7 FHIR R4, на которой она работает.

Подробнее об Anpheros и авторе →

Держите медицинскую карту при себе

Anpheros Daily хранит симптомы, анализы, лекарства и документы в одном месте, в стандартном формате и под вашим контролем. Тариф Basic бесплатный.

Скачать Anpheros Daily