initialize
This commit is contained in:
100
UBI.md
Normal file
100
UBI.md
Normal file
@@ -0,0 +1,100 @@
|
||||
**Цель встречи:** Согласовать реализацию для выпуска УКЭП через ЕБС.
|
||||
|
||||
**Ситуация:** Для регистрации и входа в новом приложении УКЭП предполагаются разные сценарии обработки. Сначала происходит идентификация в УБИ, а затем регистрация пользователя. Сначала происходит вход/восстановление пароля, а затем идентификация в УБИ как второй фактор.
|
||||
|
||||
**Вводные:** используется простой сценарий идентификации без проверок на стороне ИС.
|
||||
|
||||
В зависимости от сценария предполагаются разные страницы с разными действиями для пользователя: прекратить, зарегистрироваться, войти в ЛК.
|
||||
|
||||
Всего есть три вида конечных страниц в рамках прохождения УБИ:
|
||||
|
||||
*SucessUrl* – страница успеха [предполагаем, что на стороне приложения] – успешная идентификация – на стороне банка, перенаправление на страницу с product_id, product_type, token
|
||||
*ErrorUrl* – страница ошибки [предполагаем, что на стороне приложения] – ошибки во время прохождения идентификации
|
||||
*FailureUrl* – страница неуспеха, невозможно провести удалённую идентификацию (в случае отметки о налоговом резидентстве в опроснике – **может ли быть нашим случаем? используется ли опросник при выпуске УКЭП?** + при разрывном сценарии (не наш случай, используется простой сценарий))
|
||||
|
||||
**Предложение следующее:**
|
||||
|
||||
**Вопрос**: _Может ли быть несколько successUrl и несколько errorUrl?_
|
||||
Может. Определение URL страницы успеха или ошибки возможно в зависимости от переданного параметра product_type в ссылке на старт сценария. Для этого в настройки success-url и error-url можно добавить шаблон с if-else конструкцией. Подробное описание настройки в документе «Типовое решение УБИ. Руководство по инсталляции» 5.4.7. Описание расширенных настроек сервиса «Маршрутизатор», 5.4.7.1. Настройка нескольких страниц успеха и ошибки.
|
||||
|
||||
Краткий ответ: может. См. стр. 37 документа УБИ. Руководство по инсталляции.
|
||||
|
||||
Как будет работать?
|
||||
1) Использовать разные product_type для registration и login
|
||||
2) Использовать конструкцию if else в настройках маршуртузитора для sucess_page и error_page
|
||||
|
||||
success‑url: **<#****if** productType == "test1">https://test1.ru/success**<#****elseif** productType == "test2">https://test2.ru/success**<#****else****>**https://test3.ru**</#****if****>**
|
||||
|
||||
error‑url: **<#if** productType == "test1">https://test1.ru/success**<#elseif** productType == "test2">https://test2.ru/success**<#else>**https://test3.ru**</#if>**
|
||||
|
||||
```plantuml
|
||||
actor "Клиент" as client
|
||||
participant "Банковское приложение" as bank
|
||||
participant "Gate-Out" as gateout
|
||||
participant "Модуль УБИ" as ubi
|
||||
|
||||
== Сценарий регистрации ==
|
||||
client -> bank: Переходит на страницу регистрации
|
||||
bank --> client: "Страница пройдите идентификацию через ЕБС"
|
||||
client -> bank: Нажимает "Пройти идентификацию"
|
||||
bank -> ubi: Редирект на модуль_уби/api/v1/authentication/start?bank_id=&product_id=&product_type=**registration**
|
||||
|
||||
ubi --> client: Отображает страницу идентификации
|
||||
note right ubi: Включает в себя\nвход в ЕСИА и тд
|
||||
client -> ubi: Проходит идентификацию
|
||||
|
||||
note over gateout, ubi #129453: Успех идентификации
|
||||
|
||||
ubi -> gateout: Передаёт сведения из ЕСИА
|
||||
gateout -> bank: POST /clients/info [JSON]
|
||||
bank -> bank: Создаёт ПД клиента
|
||||
bank --> gateout: 200 OK [XML]
|
||||
gateout --> ubi: 200 OK
|
||||
|
||||
ubi -> ubi: Определяет по product_type в Маршрутизаторе sucess_url
|
||||
ubi --> bank: sucess_url_**registration**?bank_id=&product_id&pdroduct_type=**registration**&token=
|
||||
bank -> client: Показывает страницу регистрации пользователя
|
||||
|
||||
note over gateout, ubi #f04a4a: Ошибка идентификации
|
||||
|
||||
ubi -> ubi: Определяет по product_type в Маршрутизаторе error_url
|
||||
ubi --> bank: error_url_**registration**
|
||||
bank -> client: Показывает страницу ошибки идентификации ЕБС
|
||||
```
|
||||
|
||||
```plantuml
|
||||
actor "Клиент" as client
|
||||
participant "Банковское приложение" as bank
|
||||
participant "Gate-Out" as gateout
|
||||
participant "Модуль УБИ" as ubi
|
||||
|
||||
== Сценарий входа ==
|
||||
client -> bank: Переходит на страницу входа и аутентифицируется
|
||||
bank --> client: "Страница пройдите идентификацию через ЕБС" как 2 фактор
|
||||
client -> bank: Нажимает "Пройти идентификацию"
|
||||
bank -> ubi: Редирект на модуль_уби/api/v1/authentication/start?bank_id=&product_id=&product_type=**login**
|
||||
|
||||
ubi --> client: Отображает страницу идентификации
|
||||
note right ubi: Включает в себя\nвход в ЕСИА и тд
|
||||
client -> ubi: Проходит идентификацию
|
||||
|
||||
note over gateout, ubi #129453: Успех идентификации
|
||||
|
||||
ubi -> gateout: Передаёт сведения из ЕСИА
|
||||
gateout -> bank: POST /clients/info [JSON]
|
||||
bank -> bank: Метчит ПД клиента
|
||||
bank --> gateout: 200 OK [XML]
|
||||
gateout --> ubi: 200 OK
|
||||
|
||||
ubi -> ubi: Определяет по product_type в Маршрутизаторе sucess_url
|
||||
ubi --> bank: sucess_url_login?bank_id=&product_id&pdroduct_type=**login**&token=
|
||||
bank -> client: Показывает страницу регистрации пользователя
|
||||
|
||||
note over gateout, ubi #f04a4a: Ошибка идентификации
|
||||
|
||||
ubi -> ubi: Определяет по product_type в Маршрутизаторе error_url
|
||||
ubi --> bank: error_url_**login**
|
||||
bank -> client: Показывает страницу ошибки идентификации ЕБС
|
||||
```
|
||||
|
||||
Возможен ли такой вариант?
|
||||
Reference in New Issue
Block a user