Для успешного соединения требуется выполнение следующих условий:
№ | условие | как выполнить |
---|---|---|
0 | убедиться что ОС и браузер подходят для работы Рутокен Коннект | через USERAgent браузера |
1 | установить Рутокен Коннект | установка руками пользователя |
2 | убедиться что Рутокен Коннект активирован | через USERAgent браузера |
3 | установить Рутокен Плагин | установка руками пользователя |
4 | убедиться что Рутокен Плагин активирован | через функцию Рутокен Плагина |
5 | проверить наличие корневого сертификата в доверенном хранилище сертификатов пользователя системы | через функцию Рутокен Плагина |
6 | проверить наличие подключенного Рутокена ЭЦП | через функцию Рутокен Плагина |
7 | ввести PIN-код пользователя Рутокена ЭЦП | через функцию Рутокен Плагина |
8 | проверить наличие корректного личного сертификата на Рутокене | через функцию Рутокен Плагина |
9 | перенаправить пользователя на защищенный ресурс | ссылкой или через redirect |
0. Определяем окружение для корректной работы Рутокен Коннект
Используем User-agent для поиска условий указанных в описании продукта
Если условия не соответствуют следует показать пользователю сообщение с просьбой использовать подходящую для Рутокен Коннект платформу и окружение
1. Установка Рутокен Коннект
По ссылке на сайте производителя либо на собственном сайте
...
Используя ссылку на собственном сайте, вы избегаете лишних переходов на сторонние сайты, но должны самостоятельно отслеживать обновления программного обеспечения
2. Убеждаемся что Рутокен Коннект активирован
В User-agent строке должен появиться признак
Если признак не найден необходимо вернуться к пункту 1
3. Установка Рутокен Плагин
По ссылке на сайте производителя либо на собственном сайте
...
Используя ссылку на собственном сайте, вы избегаете лишних переходов на сторонние сайты, но должны самостоятельно отслеживать обновления программного обеспечения
4. Убеждаемся что Рутокен Плагин активирован
Функции
- isExtensionInstalled() -> Promise(bool)
- isPluginInstalled() -> Promise(bool)
...
Если одна из функций или обе вернули false - необходимо вернуться к пункту 3
5. Проверяем наличие корневого сертификата вашего защищенного ресурса в хранилище корневых сертификатов пользователя операционной системы
Функция
возвращает список установленных ГОСТ сертификатов, среди которых вы можете найти нужный
если необходимый корневой сертификат не будет найден среди тех, которые вернула функция, то необходимо предложить пользователю его загрузить и установить, а затем повторить пункт 5
6. Проверяем наличие подключенного Рутокена ЭЦП
Устройства семейств Рутокен S, Lite и PKI не поддерживаются.
...
Если подключенного устройства нет, или оно неподходящее, то пользователю следует показать предупреждение с просьбой подключить подходящее устройство и повторить пункт 6
7. Вводим PIN-код от устройства Рутокен ЭЦП
Перед проверкой сертификатов хранящихся на Рутокене ЭЦП необходимо авторизоваться на устройстве. Без авторизации перечисление сертификатов и закрытых ключей невозможно.
...
Если их станет меньше 1 - значит PIN-код заблокирован и пользователю следует обратиться к администратору для разблокировки PIN-кода.
8. Проверяем наличие подходящего личного сертификата на Рутокене ЭЦП
Список сертификатов с соответствующими им закрытыми ключами возвращает функция
...
Если среди обнаруженных сертификатов не оказалось подходящего либо Рутокен пуст следует сообщить пользователю что необходимый для подключения сертификат не найден и ему необходимо его получить установленным для вашей информационной системы способом
9. Перенаправляем пользователя на защищенный ресурс
Необходимо дать возможность пользователю нажать на кнопку или ссылку для перехода на защищенный ресурс вашей информационной системы либо автоматически редиректить его.
...