ЕСОЗ - публічна документація

[DRAFT] BP-ESOZ-025-0020 [KPIS] Авторизація користувача КПІС

Сторінка знаходиться в процесі розробки. Інформація на ній може бути застарілою.

https://e-health-ua.atlassian.net/wiki/spaces/EN/pages/17560797187 (видаліть блок з посиланням перед публікацією документа)

Властивості документа

Тип документа

Бізнес-процес

Назва документа

BP-ESOZ-025-0020 [KPIS] Авторизація користувача КПІС

ID настанови

GUI-004

Автор

@Liudmyla Dobrovolska (SoE eHealth) (Unlicensed)

Версія документа

v010

Статус документа

DRAFT

Дата створення

01.08.2024

Дата оновлення

 

ID групи

BPG-ESOZ-025

ID бізнес-процесу

BP-ESOZ-025-0020

Назва бізнес-процесу

[KPIS] Авторизація користувача КПІС

Посилання на схеми

[KPIS] Авторизація користувача КПІС

Загальні відомості

Процес авторизації користувача полягає в наданні доступу до Системи на основі перевірки прав доступу користувача. Авторизація здійснюється після успішної автентифікації користувача, яка підтверджує його особу

Передумови

  • Користувач КПІС має бути попередньо зареєстрований в Системі.

  • Перед початком авторизації КПІС має надати користувачу можливість ознайомитися з політикою конфіденційності КПІС:

    • посилання на політику конфіденційності КПІС повинно дозволяти користувачу ознайомитися з нею. КПІС має дозволяти користувачу зберегти текст політики як файл або надіслати його на електронну пошту обрану користувачем;

    • КПІС повинна забезпечити, що користувач може продовжити роботу з Системою лише після явної згоди з положеннями політики конфіденційності КПІС

Схема бізнес-процесу

Зображення схеми

Посилання на схему

На перегляд: https://modeler.camunda.io/share/d7c460cc-5630-48cb-8b03-067d6bb6f413

На редагування: https://modeler.camunda.io/diagrams/33c718e6-0e6e-4ada-b90b-873547a6045f--bp-esoz-025-0020-kpis-авторизація-користувача-кпіс?v=553,279,1

Похідний файл схеми (BPMN)

Опис кроків по процесу

1

№ кроку

Крок

Опис

Технічний модуль

Методи API які мають або можуть бути використані

2

SE 1.10

Початок процесу

Користувач бажає авторизуватись у КПІС

 

 

3

1.10

Користувач ініціював авторизацію у Системі

Користувач:

  • виконав вхід в інтерфейс КПІС

  • ініціює процедуру авторизації в ЕСОЗ

КПІС розпочинає процес авторизації пацієнта в ЕСОЗ. в ЕСОЗ

 

 

4

1.20

Отримати дані для авторизації

КПІС виконує запит до сервісу авторизації на отримання даних для авторизації, які будуть підписані користувачем

Scope -

Resource - POST /oauth/nonce

[DRAFT] Get nonce [API-009-001-007-0344]

5

2.10

Get nonce

В ЦБД ЕСОЗ виконуються дії, передбачені відповідним методом АРІ

 

[DRAFT] Get nonce [API-009-001-007-0344]

6

1.30

Користувач підписав дані для авторизації за допомогою ЕП

КПІС:

  • отримала дані для авторизації від сервісу

  • відображає форму для накладення електронного підпису (ЕП)

Користувач підписує дані для авторизації за допомогою ЕП

 

 

7

1.40

Передати підписані дані до Системи

Користувач підписв дані для авторизації за допомогою ЕП

КПІС повинна передати підписані дані до Системи та відобразити веб-частину сервісу авторизації Системи у фреймі

Scope - trusted_person:login

Resource - POST /api/pis/sign-in

API-010-001-003-0373

https://pisapi1.docs.apiary.io/#reference/public.-patient-information-system/sign-in/patient-sign-in

8

2.20

PIS. Patient sign-in

В ЦБД ЕСОЗ виконуються дії, передбачені відповідним методом АРІ

 

 

9

GW 1.10

Підписні дані коректні?

  • Якщо “так“ (підписні дані коректні) перейти до кроку GW 1.20

  • Якщо “ні“ (підписні дані не коректні) перейти до кроку 1.50

 

 

10

1.50

Зупинити процес авторизації

КПІС повинна зупинити процес авторизації, у випадку отримання від Системи помилки некоректних даних

 

 

11

1.60

Інформаційне повідомлення користувачу про помилку

КПІС відображає повідомлення користувачу з посиланням на помилкову сутність

 

 

12

EE 1.10

Процес завершено

Процес авторизації завершується через отримання помилки під час авторизації

 

 

13

GW 1.20

Знайдено активного запису про пацієнта?

  • Якщо “так“ (знайдено активного запису про пацієнта) перейти до кроку GW 1.30

  • Якщо “ні“ (не знайдено активного запису про пацієнтаі) перейти до кроку 1.70

 

 

14

1.70

Зупинити процес авторизації

КПІС повинна зупинити процес авторизації у разі відсутності активного запису про пацієнта на основі даних з ЕП

 

 

15

1.80

Інформаційне повідомлення користувачу про необхідність реєстрації пацієнта

КПІС відображає повідомлення користувачу з пропозицією перейти до процедури реєстрації в ЕСОЗ

 

 

16

EE 1.20

Процес завершено

Процес авторизації завершується через відсутність активного запису про пацієнта

 

 

17

GW 1.30

Знайдено більше одного активного запису про пацієнта?

  • Якщо “так“ (знайдено більше одного активного запису про пацієнта) перейти до кроку 1.90

  • Якщо “ні“ (знайдено одного активного запису про пацієнта) перейти до кроку 1.120

 

 

18

1.90

Зупинити процес авторизації

КПІС повинна зупинити процес авторизації у разі якщо знайдено більше одного активного запису про пацієнта

 

 

19

1.100

Інформаційне повідомлення користувачу: "Звернутись до НЦЗУ за уточненням персональних даних"

КПІС відображає повідомлення користувачу з пропозицією звернутись до НЦЗУ за уточненням персональних даних

 

 

20

EE 1.30

Процес завершено

Процес авторизації завершується через виявлення більш ніж одного активного запису про пацієнта

 

 

21

1.110

Відобразити форму для погодження переліку скоупів

КПІС повинна відобразити користувачу форму для погодження переліку скоупів для отримання КПІС

 

 

22

1.120

Переглянути та погодити перелік скоупів

Користувач переглядає перелік скоупів, та виконує погодження переліку скоупів

 

 

23

1.130

Запит на отримання токена доступу

В результаті погодження переліку скоупів користувачем, КПІС повинна отримати від Системи "grant code" та сформувати запит на отримання токена доступу ("access token") на основі "grant code"

Scope -

Resource - POST /oauth/tokens

API-009-001-001-0328

https://pisapi1.docs.apiary.io/#reference/public.-patient-information-system/sign-in/exchange-oauth-code-grant-to-access-token

24

2.40

Exchange oAuth Code Grant to Access Token

В ЦБД ЕСОЗ виконуються дії, передбачені відповідним методом АРІ

 

 

25

1.140

Зберегти токен доступу “access token” та токен оновлення доступу “refresh token”

У разі успішної авторизації, КПІС повинна зберегти токен доступу ("access token") та токен оновлення доступу ("refresh token")

 

 

26

1.150

Відображена головна сторінка КП

Після успішної авторизації в Системі, користувачу відображається головна сторінка КП

 

 

27

EE 1.40

Процес завершено користувач авторизований

Користувач успішно авторизований в Системі

 

 

Бізнес правила

  • Авторизація користувача можлива лише після успішної автентифікації, під час якої система перевіряє його автентифікаційні дані

  • Після автентифікації користувачу надається доступ до Системи відповідно до його ролі, що визначає набір скоупів для доступу до Системи

  • Користувач отримує токен доступу з обмеженим терміном дії, що надає тимчасовий доступ до системи

  • Якщо термін дії токена або сесії закінчується, користувач повинен пройти повторну автентифікацію для поновлення доступу

  • У разі невдалої авторизації система інформує користувача про помилку через відповідне повідомлення

Результат процесу

Результатом процесу авторизації користувача є надання йому токена доступу ("access token") та токена оновлення доступу ("refresh token"). Ці токени дозволяють користувачу отримати доступ до системних ресурсів відповідно до його ролі. Користувач може взаємодіяти лише з тими даними та функціями, до яких йому надано дозволи на основі його прав доступу

Перелік змін

Версія документа

Опис змін

Номер релізу

Версія документа

Опис змін

Номер релізу

1

 

 

 

2

 

 

 

 

ЕСОЗ - публічна документація