Модуль "Авторизация через ЕСИА"
Модуль Авторизация через ЕСИА (единая система идентификации и аутентификации) предоставляет пользователям возможность зарегистрироваться и авторизоваться через Госуслуги.
Интеграция BILLmanager с Госуслугами (ЕСИА) состоит из трёх этапов:
- Установка средств шифрования CSP CryptoPro на сервер с платформой.
- Установка ключа и сертификатов.
- Настройка интеграции в BILLmanager.
Доступ к Госуслугам возможен только с российских IP-адресов.
Установка CSP CryptoPro
Для установки CSP CryptoPro на операционные системы Unix следуйте инструкциям поставщика программного обеспечения. Процесс установки включает следующие этапы:
- Покупка и установка лицензии на CSP CryptoPro.
- Установка компонентов LSB (Linux Standart Base). LSB — набор пакетов, обеспечивающий интерфейс для работы продукта в различных Unix-системах.
- Загрузка дистрибутива. Текущая сертифицированная версия доступна на сайте производителя.
- Распаковка и установка архива. Для установки используется скрипт install.sh.
- Установка закрытых ключей и сертификатов.
Установка ключа и сертификатов
Этап 1. Получение ключей и сертификатов
- Подключите свою компанию по инструкции. Вы получите:
- ключ и сертификаты компании для работы с Госуслугами;
- логин и пароль пользователя компании.
- Создайте Мнемонику ИС:
- Перейдите на сайт, в зависимости от выбора окружения Госуслуг:
- Авторизуйтесь с данными пользователя из шага 1.
- Укажите для поля "Алгоритм формирования электронной подписи" значение "GOST3410_2012_256".
- Скачайте сертификаты для валидации ответов от ЕСИА: http://esia.gosuslugi.ru/public/esia.zip.
В результате вы получите следующие компоненты для настройки интеграции:
- сертификат компании в формате "yyyyy.cer";
- ключи компании — директория с именем в формате "keys/хххххххх.000/";
- публичный сертификат Госуслуг для валидации ответов в формате "zzzzz.cer";
- мнемоника ИС.
Этап 2. Установка сертификатов
- Загрузите на сервер с BILLmanager файлы, полученные на этапе 1:
- сертификат компании в формате "yyyyy.cer";
- ключи компании — директория с именем в формате "keys/хххххххх.000/";
- публичный сертификат Госуслуг для валидации ответов в формате "zzzzz.cer". Выбирается в зависимости от:
- окружения Госуслуг — тестовое или продуктовое;
- "Алгоритма формирования электронной подписи", выбранного на Этапе 1 п. 2.
Поместите скопированные файлы в каталог для хранения ключей каждого пользователя системы. Для учётной записи суперпользователя (root) по умолчанию используется каталог /var/opt/cprocsp/keys/root/.
CODEПолучите имена установленных ключей:
CODEКоманда выводит имена установленных ключей в виде "\\.\HDIMAGE\хххххххх-0000-0000-0000-000000000000".
Снимите пароль с сертификата, иначе авторизация через ЕСИА не будет работать:
CODEУстановите публичный сертификат Госуслуг:
CODEУстановите сертификат компании:
CODE
Настройка на стороне BILLmanager
При установке модуля платформа будет обновлена до последней версии. Это происходит из-за того, что модуль устанавливается из последней версии продукта, а версия платформы не может быть ниже версии модуля. Перед установкой модуля рекомендуем создать резервную копию платформы. Подробнее см. в статье Резервное копирование
Чтобы установить модуль, перейдите в раздел Интеграция → Модули → Авторизация через ЕСИА → кнопка Установить.
Настройка интеграции:
- Перейдите в раздел Интеграция → Модули → Авторизация через ЕСИА → кнопка .
- Заполните форму:
- Госуслуги (ЕСИА) API URL — укажите HTTPS-адрес REST API системы Госуслуги (ЕСИА):
- https://esia-portal1.test.gosuslugi.ru/ — адрес тестовой среды;
- https://esia.gosuslugi.ru/ — адрес продуктовой среды.
- Мнемоника ИС — укажите ваш буквенно-цифровой код информационной системы.
- Сертификат — выберите сертификат, который будет использоваться для подписи запросов для Госуслуги (ЕСИА).
- Инвертировать подпись — активируйте опцию, чтобы зеркально побайтово развернуть полученную подпись.
- Проверять подпись сообщений от Госуслуги (ЕСИА) — активируйте опцию, чтобы проверять подпись сообщений от Госуслуги (ЕСИА).
- Сертификат Госуслуги (ЕСИА) — выберите сертификат, который будет использоваться для проверки подписи сообщений от Госуслуги (ЕСИА).
- Нажмите Ок.
- Госуслуги (ЕСИА) API URL — укажите HTTPS-адрес REST API системы Госуслуги (ЕСИА):

Дополнительно
Логирование
Лог взаимодействия BILLmanager с модулем записывается в файл /usr/local/mgr5/var/omesia.log.
Диагностика неполадок
Проблема
Авторизация не работает, а при максимальном уровне логирования в логе /usr/local/mgr5/var/omesia.log следующее:
Решение
Это означает, что доступ к сервису Госуслуг с IP-адреса сервера, на котором расположен BILLmanager, заблокирован. Доступ к Госуслугам возможен только с российских IP-адресов.
Пример настройки проксирования с помощью nginx. Подробнее см. в документации Nginx.
- На сервере с прокси:
Добавьте в файл конфигурации nginx.conf:
CODE- Перезапустите nginx.
- В веб-интерфейсе BILLmanager:
- Перейдите в раздел Интеграция → Модули → Авторизация через ЕСИА → кнопка .
- В настройках интеграции в поле Госуслуги (ЕСИА) API URL укажите адрес в формате:
- https://{PROXY_HOST}/gosuslugi — тестовое окружение;
- https://{PROXY_HOST}/gosuslugi/aas/oauth2/v2/ac — продуктовое окружение.
- Нажмите Ок.