Единая цифровая платформа здравоохранения Узбекистана
0.3.0 -
Uzbekistan Digital Health Platform, опубликовано Uzinfocom LLC. Это руководство не является санкционированной публикацией; это непрерывная сборка для версии 0.3.0, созданной FHIR (HL7® FHIR® Standard) CI Build. Эта версия основана на нынешнем содержании https://github.com/vadi2/DHP-temp/ и регулярно изменяется. Смотрите каталог опубликованных версий
На этой странице представлены переводы с языка оригинала, на котором былонаписано руководство. Информацию об этих переводах и инструкции попредоставлению отзывов о переводах можно найти здесь.
playground.medcore.uz/fhirfhir.medcore.uzДля обеспечения безопасности, конфиденциальности и надежного контроля доступа в рамках Национальной цифровой платформы здравоохранения (DHP) реализована система аутентификации и авторизации, основанная на международном стандарте OAuth 2.0. Она поддерживает как frontend-, так и backend-сценарии приложений. Централизованный сервер Single Sign-On (SSO) обеспечивает безопасную идентификацию всех участников платформы от пациентов и медицинских организаций до внешних систем.
DHP поддерживает два основных сценария аутентификации:
client_credentials (без участия пользователя),authorization code с поддержкой redirect_uri и опциональным PKCE (Proof Key for Code Exchange).Данный раздел описывает процесс получения токена доступа для backend-приложений с использованием протокола OAuth 2.0 и grant-типа client_credentials. Этот поток используется, когда сервису необходимо получить доступ к защищённым API от своего имени, а не от имени пользователя.
Backend-клиент должен быть зарегистрирован на сервере SSO. После регистрации предоставляются:
POST /oauth/token
| Параметр | Значение |
|---|---|
| grant_type | client_credentials |
| client_id | <client_id> |
| client_secret | <client_secret> |
В этом разделе описывается, как frontend-приложения могут авторизовать пользователей через сервер SSO, используя стандартный Authorization Code grant протокола OAuth 2.0. Данный поток обеспечивает единый вход и безопасную аутентификацию пользователей в экосистеме DHP.
Frontend-приложение должно быть зарегистрировано на сервере SSO. После регистрации предоставляются:
GET sso.medcore.uz
Параметры:
| Параметр | Значение |
|---|---|
| client_id | <client_id> |
| redirect_uri | <redirect_uri> |
После успешного входа пользователь будет перенаправлен обратно на redirect_uri с кодом авторизации.
Этот обмен необходимо выполнить на стороне backend для защиты client_secret. Если у приложения нет backend, используйте PKCE.
Включайте токен доступа в каждый запрос:
Authorization: Bearer <access_token>
(будет дополнено требуется описание обработки ошибок)
Требование Must Support в данном руководстве применяется в двух контекстах:
Профили UZ Core: элемент должен быть заполнен при обмене данными между системами в Узбекистане.
Специфические профили DHP: элемент поддерживается DHP, и клиентские системы обязаны заполнять его, если данные доступны.
Если элемент не может быть заполнен, потому что данные отсутствуют в исходной системе, и правила кардинальности позволяют это, элемент может оставаться пустым. Если же правила кардинальности требуют обязательного заполнения, необходимо использовать расширение Data Absent Reason.