Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Для успешного соединения требуется выполнение следующих условий:

условиекак выполнить
0убедиться, что ОС и браузер подходят для работы Рутокен
Коннект
Коннектачерез USERAgent браузера
1установить Рутокен Коннектустановка руками пользователя
2убедиться, что Рутокен Коннект активированчерез
USERAgent браузера
функцию Рутокен Коннекта
3установить Рутокен Плагинустановка руками пользователя
4убедиться, что Рутокен Плагин активированчерез функцию Рутокен Плагина
5проверить наличие
корневого сертификата в доверенном хранилище сертификатов пользователя системычерез функцию Рутокен Плагина6проверить наличие подключенного
подключенного устройства семейства Рутокена ЭЦПчерез функцию Рутокен Плагина
7
6ввести PIN-код пользователя Рутокена ЭЦПчерез функцию Рутокен Плагина
8
7проверить наличие корректного личного сертификата на Рутокенечерез функцию Рутокен Плагина
9
8перенаправить пользователя на защищенный ресурсссылкой или через redirect


0. Определяем окружение для корректной работы Рутокен

...

Коннекта

Используем User-agent для поиска условий указанных в описании продукта.

Если условия не соответствуют следует показать пользователю сообщение с просьбой использовать подходящую для Рутокен Коннект Коннекта платформу и окружение.

1. Установка Рутокен

...

Коннекта

По ссылке на сайте производителя либо на собственном сайте.

Если использовать ссылку на сайте производителя, то не нужно беспокоиться об обновлении версий, так как эту заботу берет на себя сам производитель.

Используя ссылку на собственном сайте, вы избегаете лишних переходов на сторонние сайты, но должны самостоятельно отслеживать обновления программного обеспечения.

2. Убеждаемся, что Рутокен Коннект активирован

...

Функции: 

  • isExtensionInstalled() -> Promise(bool)
  • isPluginInstalled() -> Promise(bool)

Должны вернуть true.

Если одна из функций или обе вернули false - необходимо

В User-agent строке должен появиться признак (question)

Если признак не найден необходимо вернуться к пункту 1.

3. Установка Рутокен Плагин

По ссылке на сайте производителя либо на собственном сайте.

Если использовать ссылку на сайте производителя, то не нужно беспокоиться об обновлении версий, так как эту заботу берет на себя сам производитель.

Используя ссылку на собственном сайте, вы избегаете лишних переходов на сторонние сайты, но должны самостоятельно отслеживать обновления программного обеспечения

4. Убеждаемся что Рутокен Плагин активирован

Функции Функции:

  • isExtensionInstalled() -> Promise(bool)
  • isPluginInstalled() -> Promise(bool)

Должны вернуть true.

Если одна из функций или обе вернули false - необходимо вернуться к пункту 3

...

.

...

Функция 

(question)

возвращает список установленных ГОСТ сертификатов, среди которых вы можете найти нужный 

...

5

...

. Проверяем наличие подключенного Рутокена ЭЦП 

Устройства семейств Рутокен S, Lite и PKI не поддерживаются.

Рутокен Коннект работает только с устройствами семейства Рутокен ЭЦП с поддержкой аппаратной ГОСТ-криптографии, поэтому отсутствие подходящего устройства не даст возможности подключиться к защищенному серверу через Рутокен Коннект.

Функция 

(question)

возвращает Функция enumerateDevices(options) → {number[]}  возвращает список подключенных устройств

Функция (question) 

...

.

Функция getDeviceInfo(deviceId, option) → {object} может вернуть модель устройства (option - TOKEN_INFO_MODEL).


Warning

Необходимо убедиться, что подключенное устройство не принадлежит к семейству Рутокен Lite, так как с ним работа

...

Рутокен

...

Коннекта невозможна.

Если ваш защищенный сервер работает по шифрсьютам основанным на алгоритмах электронной подписи 2012 года, то дополнительно нужно убедиться что подключенное устройство поддерживает работу по новым алгоритмам

Код:

var options = plugin.TOKEN_INFO_SUPPORTED_MECHANISMS;

function isRt20() {

                plugin.getDeviceInfo(deviceId, options).then(function(results) {

                               return results.indexOf(plugin.PUBLIC_KEY_ALGORITHM_GOST3410_2012_256) !== -1 || results.indexOf(plugin.PUBLIC_KEY_ALGORITHM_GOST3410_2012_512) !== -1;

                });

}Функция (question)

вернет 2, если подключенное устройство Рутокен поддерживает алгоритмы электронной подписи 2012 года.

Если подключенного устройства нет, или оно неподходящее, то пользователю следует показать предупреждение с просьбой подключить подходящее устройство и повторить пункт 6.

...

6. Вводим PIN-код от устройства Рутокен ЭЦП

Перед проверкой сертификатов хранящихся на Рутокене ЭЦП необходимо авторизоваться на устройстве. Без авторизации перечисление сертификатов и закрытых ключей невозможно.

Функция (question) 

принимает Функция login(deviceId, pin) принимает PIN-код пользователя, который необходимо принять с помощью специального окна или поля ввода.

и возвращает true (question)

Если функция возвращает (question) значит бросает исключение значит PIN-код неверный и следует сообщить об этом пользователю и повторить пункт 7.

...

Количество оставшихся попыток ввода PIN-кода возвращает функция (question)функция getDeviceInfo(deviceId, option) → {object} с option TOKEN_INFO_PIN_RETRIES_LEFT.

Если их станет меньше 1 - значит PIN-код заблокирован и пользователю следует обратиться к администратору для разблокировки PIN-кода.

...

7. Проверяем наличие подходящего личного сертификата на Рутокене ЭЦП

Список сертификатов с соответствующими им закрытыми ключами возвращает функция (question) функция enumerateCertificates(deviceId, category) → {string[]}

Тело сертификата (каждого по отдельности) можно получить функцией (question) функцией getCertificate(deviceId, certId) → {string}

Среди обнаруженных на Рутокене сертификатов необходимо найти соответствующий требованиям защищенного сервера вашей информационной системы. 

Если среди обнаруженных сертификатов не оказалось подходящего, либо Рутокен пуст, следует сообщить пользователю, что необходимый для подключения сертификат не найден и ему необходимо его получить установленным для вашей информационной системы способом.

...

8. Перенаправляем пользователя на защищенный ресурс

Необходимо дать возможность пользователю нажать на кнопку или ссылку для перехода на защищенный ресурс вашей информационной системы либо автоматически его редиректить его.