ЦОИД идентификация - подписание документов ЭЦП
В статье описывается процесс подписания документов Пользователя с идентификацией Пользователя в ЦОИД
Last updated
В статье описывается процесс подписания документов Пользователя с идентификацией Пользователя в ЦОИД
Last updated
Для того, чтобы воспользоваться услугой подписания документов ЭЦП с идентификацией Пользователя через ЦОИД системы Aitu Passport необходимо чтобы Партнер:
был зарегистрирован в соответствующем окружении Aitu Passport (на тестовой площадке, на продакшн площадке)
создал свой сервис в соответствующем окружении Aitu Passport
подключил к своему сервису услуги/сервисы Aitu Passport (scope) подписания документов: "sign", "ul_sign". Подробнее о сервисах Aitu Passport см., тут
установил на свои ресурсы и настроил приложение "Адаптер ЦОИД"
переда сотрудникам Aitu Passport ACCESS_LOGIN и ACCESS_PASSWORD, указанные при настройке Адаптера ЦОИД
В Aitu Passport реализовано несколько вариантов работы с облачной ЭЦП:
Подписание любых файлов и получение результата в формате PKCS7.
Подписание PDF файлов (встраивание подписи прямо в PDF файл).
Подписание XML файлов, получение результата в формате XMLDSIG (встраивание подписи и сертификата пользователя прямо в XML файл).
Как выбрать нужный вам вариант см., раздел "Выбор варианта подписания" в статье "Подписание документов ЭЦП"
Aitu Passport позволяет осуществлять подписание документа ЭЦП для физических лиц (ЭЦП ФЛ) и ЭЦП для юридических лиц (ЭЦП ЮЛ). Так же доступно множественное подписание документа ЭЦП различными лицами.
Прежде чем инициировать процесс подписания документов ЭЦП ЮЛ информационная система партнера должна передать в Aitu Passport ряд данных. Детальное описание данных и способ их предоставления см. статью Подписание документов ЭЦП
При переходе Пользователя в приложении Партнера к этапу подписания документов ЭЦП, приложение Партнера, до того как начнется процесс подписания, должно загрузить в Aitu Passport документ или документы которые должен подписать Пользователь. Предварительная загрузка применяется для того, чтобы приложение Партнера могло получить signableId. signableId - это уникальный идентификатор документа, присвоенный Aitu Passport, используется в запросе авторизации (см. п.2 настоящего раздела) и в методах получения данных о подписании документа. В зависимости от выбранного варианта подписания (информацию о вариантах подписания см. в разделе "Выбор варианта подписания") используется один из следующих методов загрузки документов:
Если выбран вариант PKCS7, то для загрузки документа используется метод api/v2/oauth/signable
Если выбран вариант PDF, то для загрузки документа используется метод api/v2/oauth/signable/pdf
Если выбран вариант XMLDSIG, то для загрузки документа используется метод api/v2/oauth/signable/xml
В методе загрузки документа, приложение Партнера может передать ссылку на страницу с текстом документа, который должен подписать Пользователь. Если ссылка передана, то в процессе подписания на платформе Aitu Passport, Пользователь сможет ознакомиться с текстом документа.
Процесс загрузки документов обозначен стрелками 1 и 2 на схеме
2. После того, как Пользователь в приложении Партнера нажмет на кнопку или ссылку подписи документа (стрелка 3 на схеме), Приложение партнера формирует ссылку-запрос авторизации. С методом генерации ссылки-запроса авторизации oauth2/auth можно ознакомиться здесь, процесс авторизации детально описан в статье "Авторизация" -> глава "Авторизация в Aitu Passport". Важные моменты при формировании параметров для ссылки-запроса авторизации в процессе подписания документов ЭЦП:
В случае, если по условиям договора на оказание услуг Aitu Passport, номер мобильного телефона Пользователя верифицирует:
Партнер самостоятельно, то приложение Партнера должно в ссылке-запросе авторизации (oauth2/auth) передать параметр otp_confirmation
. Чтобы получить значение для параметра otp_confirmation
, приложение Партнера должно вызвать метод api/v1/trusted-phone. Значение для параметра otp_confirmation
передается в параметре secret
ответа метода api/v1/trusted-phone. Внимание! secret
, а соответственно и значение в параметре otp_confirmation
является одноразовым, его необходимо получать для каждого запроса авторизации заново!
Aitu Passport, то параметр otp_confirmation
в ссылке-запросе на авторизацию (oauth2/auth) не передается, метод api/v1/trusted-phone вызывать не нужно.
Процесс получения значения для параметра otp_confirmation
обозначен стрелками 4 и 5 на схеме
В параметре scope
обязательно указывается значение sign
- приложение Партнера запрашивает от Aitu Passport услугу электронного подписания документа. Параметр sign должен передаваться следующим образом: sign.1,2,3,
где 1, 2 и 3 это signableId, полученные от метода загрузки документа (описание методов загрузки см., п.1 настоящего раздела);
Если известен ИИН Пользователя в параметре iin ссылки-запроса авторизации указывается значение ИИН.
3. После того, как приложением Партнера была сгенерирована ссылка-запрос на авторизацию (стрелка 6 на схеме), происходит редирект Пользователя на принимающую страницу Aitu Passport, где Пользователь проходит процессы авторизации, идентификации в Aitu Passport. Путь пользователя в Aitu Passport определяется параметрами, переданными в ссылке-запросе авторизации. Стрелки 7 - 16 на схеме
Для успешного прохождения этапа биометрической идентификации скорость подключения устройства Пользователя к сети интернет должна быть не менее 100кб/сек
4. Aitu Passport проводит проверку ИИН и фотографии с изображением лица Пользователя, полученной при биометрической идентификации, в ЦОИД через Адаптер ЦОИД (стрелки 17 - 22 на схеме
5. Aitu Passport предлагает Пользователю подписать документ, Пользователь подписывает документ ЭЦП (стрелки 23 - 28 на схеме)
6. Aitu Passport генерирует код авторизации и передает его приложению Партнера. Описание данного процесса см. в статье "Авторизация" -> глава "Авторизация в Aitu Passport. Стрелки 29 и 30 на схеме
7. Приложение Партнера (серверная часть приложения) обменивает полученный код авторизации на токены (access_token, id_token). Описание данного процесса см. в статье "Авторизация" -> глава "Авторизация в Aitu Passport. Стрелки 31 и 32 на схеме
Как получить подписанный документ см, раздел Получение документов, подписанных ЭЦП в статье Подписание документов ЭЦП
Как организовать процесс множественного подписания документов см., раздел Множественное подписание документа ЭЦП в статье Подписание документов ЭЦП
Внимание:
Период хранения не подписанных документов, переданных на подписание (signableId) 24 часа с момента генерации signableId;
Параметр otp_confirmation
действителен в течение 60 минут с момента генерации;
Код авторизации (code) действителен в течение 5 минут с момента генерации;
Токен авторизации (access_token ) действителен в течение 30 дней с момента генерации;
Токен пользователя на устройстве действителен 1 год с момента генерации.
Как проверить валидность ЭЦП см, раздел "Проверка валидности подписи" в статье Подписание документов ЭЦП