Как мы помогли клиентам автоматически настраивать программы для работы с КЭП

f0391febb44a946cda1fc38744ff68f2.jpg

Устанавливать и настраивать программы для работы с электронной подписью можно разными способами. Когда-то мы это делали с помощью CD-дисков, а потом поняли, что это долго и неудобно. Тогда мы разработали решение, которое позволяет клиентам Удостоверяющего центра и других продуктов Контура устанавливать и настраивать программы без каких-либо действий со стороны пользователя и практически без инструкций. И имя ему — Контур.Веб-диск.

Я Андрей Чеканов, ведущий инженер-программист и разработчик в Контуре. В статье расскажу, как мы создавали это решение и почему не все получилось сразу.

Сначала немного контекста

Удостоверяющий центр Контура — это крупный центр по выдаче сертификатов электронных подписей по всей стране. Он работает с 2003 года, а точки выдачи находятся практически в каждом городе России.

Получить токен с сертификатом электронной подписи и ключами — не достаточно. Чтобы электронная подпись заработала, нужно правильно настроить компьютеры и программы.

Так как у Удостоверяющего центра больше 2-х миллионов клиентов, помочь каждому из них лично — задача непростая. В первое время мы решали эту задачу с помощью CD-дисков: высылали их клиентам вместе с комплектом документов. Но после одного случая решили перевести всё в веб. Сейчас расскажу подробнее.

Спасибо за быструю установку, но все устарело

Однажды, в году так 2009-м, нам позвонил клиент, чтобы поблагодарить за быструю настройку компьютера и программ для электронной подписи с помощью CD-диска. Мы были рады хорошему отзыву, но потом выяснили, что диск дошел до клиента только через год, а версия программы устарела. Именно в тот момент мы и решили, что нужно уходить от десктопа и версии на носителе, и перенести всю работу в браузер через веб-диск.

Как мы создавали веб-диск

Веб-диск — это сервис, который помогает клиенту настраивать компьютер для работы с электронной подписью на разных сайтах и другими сервисами Контура. Работать с ним можно из любого браузера. По статистике сервиса настройка для большинства пользователей занимает 6–7 минут без инструкций и консультаций со специалистами.

Но таким он был не всегда. Чтобы привести его к такому виду, у нас ушло девять лет.

Первый шаг: начали с одного браузера

Так как большинство сервисов Контура и площадки контролирующих органов работали только в Internet Explorer, то и веб-диск мы решили делать на его основе.

Мы перенесли сервис в онлайн-пространство и добавили в настройки Internet Explorer. Так веб-диск научился определять версии Windows компьютера клиента и автоматически устанавливать их. Если говорить про электронную подпись, то для ее работы нужен комплекс программ:

  • компоненты КриптоПро CSP — средство криптографической защиты, которое подписывает и шифрует данные;

  • драйверы Рутокен для USB-токенов, на которых могут храниться ключи для подписания и шифрования;

  • Контур.Тулбокс — компонент, который облегчает взаимодействие браузера с разными версиями КриптоПро CSP.

Первые версии веб-диска в Internet Explorer работали на технологии ActiveX и использовали только стандартные ActiveX-компоненты Windows. С этими технологиями не умели работать остальные браузеры, поэтому мы начали искать другое решение.

Второй шаг: добавили Google Chrome и Mozilla Firefox

А решение было таким — мы добавили технологии плагинов NPAPI и смогли работать в Google Chrome до 45 версии и Mozilla Firefox до 52 версии. Но в отличие от Internet Explorer, в этих браузерах клиенту приходилось выполнять дополнительные операции самостоятельно: скачивать плагин и устанавливать расширение в браузере.

Третий шаг: итоговый

В 2018 году Google Chrome и Mozilla Firefox отказались от NPAPI. Поэтому мы вновь ушли на поиски улучшенных технологий и добавили NativeClient — апгрейд от Google. Из-за того, что механизм работы с плагинами стал асинхронным, нам пришлось переписывать весь код сервиса.

Позже с NativeClient научились работать и другие браузеры, например, Microsoft Edge. Так веб-диск стал кроссбраузерным инструментом.

Как работает веб-диск сейчас

Клиент Удостоверяющего центра получает доступ к веб-диску вместе с сертификатом электронной подписи. Он заходит в личный кабинет и следует подсказкам по установке. Параллельно веб-диск проверяет текущее состояние компьютера, а затем самостоятельно устанавливает нужные программы. Все окна инсталляторов скрыты от пользователя, чтобы не пугать его сложными действиями. Если программы для работы с электронной подписью меняют версию, то веб-диск автоматически обновляет программу у пользователя с помощью небольшого приложения, работающего в фоновом режиме. Веб-диск работает не только на Windows, но и macOS и Linux.

Он помогает пользователю работать не только со стандартными настройками систем, но и уникальными. Например:

  • подготовить кассу для продажи алкоголя и учета в ЕГАИС;

  • без дополнительных манипуляций настроить плагины для Росаккредитации и ЛесЕГАИС.

Сейчас веб-диском пользуется ежемесячно 128 тысяч клиентов Удостоверяющего центра. Если и вам нужно настроить компьютер для работы с электронной подписью, заходите на веб-диск. Он находится в открытом доступе.

© Habrahabr.ru