Инструкция по развертыванию ЕСИА Смарт

Здесь описаны требования, предъявляемые платформой ЕСИА Смарт к IT-инфраструктуре, в которую планируется интеграция. Поскольку платформа представляет собой комплексное и конфигурируемое решение, то данные требования носят консультационный характер и могут меняться в зависимости от конкретной выбранной схемы размещения или иных условий.

Системные требования

Рекомендуемое ПО:

  • docker - не ниже 20.10.16 (рекомендуемое 24.0.2 (compose встроен));
  • docker-compose (отдельный) - не ниже 1.29.2 (рекомендуемое 2.19.0);
  • ОС - Linux

Дополнительные требования:

Для корректной работы приложению необходимо наличие лицензионного кода на ПО КриптоПро CSP 5.0

Достаточно приобрести лицензию для КриптоПро CSP 5.0 на одно рабочее место - бессрочная

Поскольку требования к аппаратной части сильно зависят от планируемой загрузки (и выбранной схемы размещения), то тут будут приведены минимальные характеристики.

Минимальные требования к аппаратной части:

  • 2CPU
  • 2GB Memory
  • 50GB Disk

Технические особенности

Программное обеспечение ЕСИА Смарт поставляется в виде архива со скриптами. Запуск происходит через docker-compose.

docker-compose - средство для определения и запуска приложений Docker с несколькими контейнерами. При работе с ним используется формат YAML для настройки служб приложения.

Безопасность

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

Хранение данных

ЕСИА Смарт не хранит данные локально и представляет собой read-only контейнер.

Схема взаимодействия между сервисами

Взаимодействие между сервисами

Конфигурация

Конфигурирование хост-машины

Для запуска ЕСИА Смарт можно использовать современную ОС семейства Linux. Тем не менее есть примерные требования, которые гарантируют стабильную работу и простоту запуска, поскольку они используются при разработке и тестировании платформы. Такие требования являются следующими:

  • ОС: Debian 9.5 (x86-64) или выше, Ubuntu 18.04 (x86-64) или выше;
  • наличие на машине доступа к harbor.rnds.pro, hub.docker.com по протоколу HTTPS на порт 443 для скачивания Docker образов сервисов;
  • доменное имя, по которому будет доступен ЕСИА Смарт;

Конфигурирование сервиса

Конфигурирование сервиса выполняется путем редактирования .env файла (описание переменных см. Приложение А)

По умолчанию вместе с ЕСИА Смарт запускается балансировщик Nginx. По необходимости можно заменить его другим балансировщиком.

Важно Балансировщик Nginx поставляемый в коробочном решении не может применяться в боевом режиме. Весь риск и последствия использования тестового балансировщика лежит на заказчике.

Запуск приложения осуществляется этой командой:

docker-compose up -d

Приложение будет доступно по указанному домену в .env файле

ПРИЛОЖЕНИЕ А. Описание переменных окружения

Название Описание Пример значения
DEBUG_APP Отладочный режим приложения, в котором он не отправляет информацию на CIS_DATA_URI, а просто показывает ее в браузере true
CIS_REDIRECT_URI Урл возврата после успешной или неудачной авторизации https://Домен_КИС/callback
CIS_DATA_URI Урл для отправки данных https://Домен_КИС/callback
ESIA_REDIRECT_URI Урл возврата после авторизации в ЕСИА https://Домен_ЕСИА_Смарт/auth/esia_oauth/callback
ESIA_LOGOUT_REDIRECT_URI Урл возврата после логаута из ЕСИА https://Домен_ЕСИА_Смарт/auth/esia_oauth/logout
SCOPE Список скоупов openid fullname mobile email addresses id_doc
CERT_PATH Путь к файлу сертификата КИС. Необходимо при CRYPTO_PROVIDER=openssl certs/cert.crt
PKEY_PATH Путь к файлу ключа КИС. Необходимо при CRYPTO_PROVIDER=openssl certs/secret.key
ESIA_CERT_PATH Путь к файлу сертификата ЕСИА. Необходимо при CRYPTO_PROVIDER=openssl certs/esia-test.crt
INFO Подробные логи true
DEBUG Максимально подробные логи true
TEST Тестовый контур есиа true
SKIP_INFO Пропускаем запрос ПД у ЕСИА false
CRYPTO_PROVIDER Крипто провайдер. Доступные значения (signer, openssl) signer
SIGNER_HOST Хост по которому доступен крипто провайдер. Необходимо при CRYPTO_PROVIDER=signer http://127.0.0.1:8505
SIGNER_ESIA_CERT Алиас сертификата ЕСИА для проверки подписи ответа. Необходимо при CRYPTO_PROVIDER=signer esia_gost_2012_test
SIGNER_USER Basic auth логин. Необходимо при CRYPTO_PROVIDER=signer admin
SIGNER_PASSWORD Basic auth пароль. Необходимо при CRYPTO_PROVIDER=signer 123456
SIGNER_CERT Алиас используемого сертификата. Необходимо при CRYPTO_PROVIDER=signer Smev3
SSL_CERT_DIR Путь до корневых сертификатов в системе. Необходимо при CRYPTO_PROVIDER=signer /usr/lib/ssl/certs
CLIENT_ID Путь до корневых сертификатов в системе. Необходимо при CRYPTO_PROVIDER=signer RNDS
  • Инструкция по развертыванию ЕСИА Смарт
  • Системные требования
  • Технические особенности
  • Безопасность
  • Хранение данных
  • Схема взаимодействия между сервисами
  • Конфигурация
  • Конфигурирование хост-машины
  • Конфигурирование сервиса
  • ПРИЛОЖЕНИЕ А. Описание переменных окружения