Глубинные ссылки (Deep Links)
Мобильное приложение DSS Client, позволяющее подтверждать операции подписи в КриптоПро DSS, может быть автоматически открыто (вызвано) непосредственно из клиентского приложения, установленного на мобильном устройстве пользователя. Для этого используются глубинные ссылки (Deep Links).
1. Пользователь инициирует операцию подписи в клиентском приложении на своем мобильном устройстве, связываясь с серверной частью интегрируемой с КриптоПро DSS системы.
1.1.Интегрируемая система передает необходимые сведения в КриптоПро DSS, где начинается
операция подписи.
Примечание
В зависимости от того, где хранится подписываемый документ, он будет передан либо по цепочке Клиентское приложение –> Интегрируемая ИС –> КриптоПро DSS, либо Интегрируемая ИС –> КриптоПро DSS.
2. Одновременно с п. 1 клиентское приложение при помощи Deep Link вызывает приложение DSS Client.
2.1.Открывшееся на мобильном устройстве пользователя приложение DSS Client запрашивает у КриптоПро
DSS информацию о подписываемом документе.
2.2.КриптоПро DSS отправляет в DSS Client указанную в п. 2.1. информацию.
2.3.Получив информацию от КриптоПро DSS, DSS Client отображает подписываемый документ пользователю
для проверки.
2.4.Пользователь просматривает сообщение и/или документ, убеждается, что хочет выполнить
данную операцию, и инициирует подтверждение операции в DSS Client.
2.5.DSS Client вычисляет необходимый для подтверждения операции код аутентификации.
2.6.DSS Client отправляет код аутентификации в КриптоПро DSS.
2.6.1. КриптоПро DSS вычисляет код аутентификации и проверяет полученный код
аутентификации.
2.6.2. В случае совпадения полученных в п. 2.6.1. кодов аутентификации КриптоПро DSS
успешно подписывает документ.
2.7.КриптоПро DSS отправляет подписанный документ в интегрируемую систему.
Примечание
Перед вызовом DSS Client клиентскому приложению рекомендуется удостовериться (получить ответ от КриптоПро DSS), что операция подписи запущена.
Префикс Deep Link для DSS Client
dssclient://
Формат URL для DSS Client
Клиентское приложение вызывает DSS Client следующим образом:
dssclient://[operation]?[params]
где
operation = start_confirmation
params
:user_id
- (необязательный параметр) идентификатор операции для подтверждения;
Пример:
dssclient://start_confirmation?user_id=test-ebaad8fd-cafe-43e6-9fed-33ffb31c65a7