Сервис обслуживания ЭП
Сервис обслуживания ЭП — компонент модуля Базовые объекты. Сервис указывает в журнале подписей Web-клиента актуальный статус подписи, тип и дату окончания срока действия сертификата. Сервис обслуживания ЭП может работать в сочетании с Криптосервисом — Docker-контейнером, выполняющим функции обслуживания ЭП.
Для использования криптосервиса ЭП требуется Docker актуальной версии и опция лицензии Docsvision Сервис обслуживания электронной подписи (только для добавления архивного штампа времени). Криптосервис может быть получен из общего реестра образов Docker Hub — docsvision/cryptoservice
или реестра образов Docsvision — packages.docsvision.com/cryptoservice
.
Функциональные возможности сервиса обслуживания ЭП
Сервис обслуживания ЭП — расширение, входящее в стандартную поставку модуля Базовые объекты, не следует путать его с Криптосервисом. Криптосервис поставляется в виде Docker-контейнера. |
-
Если срок действия сертификата не истёк, Сервис указывает в карточке актуальный статус подписи, тип и дату окончания срока действия сертификата, даёт возможность просматривать дополнительную информацию о подписи в журнале подписей Web-клиента.
-
Если срок действия сертификата не истёк, Криптосервис доступен и функционирует, в карточку добавляется новый архивный штамп времени и улучшает подпись до CAdES-A.
-
В Docsvision версии 6.1 и выше Криптосервис является обязательным для проверки подписей CAdES-BES и CAdES-X Long Type 1 с нестандартными для .NET 6 алгоритмами в сертификатах. Требуется, например, при использовании сертификатов КриптоПро.
-
В Docsvision версии 6.1 и выше Криптосервис также необходим для функционирования Простой подписи.
Из-за использования библиотеки tspcom.dll Криптосервис требует быть развернут минимум в 32-битном процессе Службы рабочих процессов.
Установка и запуск Криптосервиса
-
Модуль "Платформа" версии 6.1 и выше + "Web-клиент" 18 и выше.
Криптосервис является обязательным для проверки подписей с нестандартными для .NET 6 алгоритмами в сертификатах. Требуется, например, при использовании сертификатов КриптоПро. -
Модуль "Платформа" версии 5.5.5 + "Web-клиент" 17.
Криптосервис указывает в журнале подписей Web-клиента актуальный статус подписи, тип и дату окончания срока действия сертификата, делает доступной расширенную информацию о подписи.
Криптосервис можно установить и запустить командой:
docker run -d -p 8100:8094 packages.docsvision.com/cryptoservice (1)
1 | Если используется Docker Hub, замените packages.docsvision.com/cryptoservice на docsvision/cryptoservice . |
Настройки криптосервиса задаются в командной строке.
При запуске контейнера необходимо связать порт хоста с портом контейнера, например, -p 8100:8094
. В примере 8100
— порт хоста, 8094
— порт контейнера. Для работы функций проверки и формирования подписи сервер Docsvision должен подключаться к контейнеру через порт хоста. Адрес Криптосервиса указывается в конфигурационном файле, см. подробности ниже.
По умолчанию Криптосервис использует TSP-службу с адресом http://cryptopro.ru/tsp/tsp.srf
. При необходимости адрес используемой TSP-службы можно переопределить с помощью переменной окружения TSP_SERVICE_ADDRESS
. Ниже приведён пример переопределения адреса TSP-сервиса:
docker run -d -p 8100:8094 -e TSP_SERVICE_ADDRESS=http://testca2012.cryptopro.ru/tsp/tsp.srf packages.docsvision.com/cryptoservice
Контейнер поставляется в комплекте со следующими сертификатами:
При необходимости использования дополнительных сертификатов выполните одну из следующих настроек:
-
Укажите путь к папке сертификатов:
-
Необходимые сертификаты сохраните в отдельную папку на диске Docker-хоста.
-
Смонтируйте в каталог
/var/cryptoservice/cacerts
Docker-контейнера и запустите контейнер.
При запуске контейнера всё содержимое папки будет импортировано в хранилище.docker run -d -p 8100:8094 -v ./Cert:/var/cryptoservice/cacerts packages.docsvision.com/cryptoservice (1)
1 Если используется Docker Hub, замените packages.docsvision.com/cryptoservice
наdocsvision/cryptoservice
.
-
-
Заново соберите образ:
-
Создайте Dockerfile:
FROM packages.docsvision.com/cryptoservice COPY ./your/cacerts/ /var/cryptoservice/cacerts/ (1)
1 Если используется Docker Hub, замените packages.docsvision.com/cryptoservice
наdocsvision/cryptoservice
-
Соберите собственный образ:
docker build . -t cryptoservice
-
Запустите контейнер:
docker run -d -p 8100:8094 cryptoservice
-
Настройка Криптосервиса в Docsvision 6.1
-
После установки Криптосервиса создайте файл с расширением
.json
и любым именем, скопируйте созданный конфигурационный файл по пути/usr/lib/docsvision/platform/config
и перезапустите службу dvappserver. Пример содержимого файла.json
приведён ниже:{ "DocsVision": { "BackOffice": { "Server": { "Extension": { "ComplexSignatureServiceAddress": "ConnectAddress=http://server.domain.com:8100/cryptoservice/api/v1" (1) } } } } }
1 Адрес Криптосервиса. -
Зайдите в Консоль управления и создайте процесс Службы фоновых операций с типом конфигурации Обслуживание ЭП.
-
Для корректной работы службы фоновых операций с использованием сервиса перештамповки подписей необходимо использовать машину, имеющую как минимум два процессора.
-
Сервис обслуживания ЭП должен запускаться только в одном экземпляре рабочего процесса Службы фоновых операций.
-
-
В соединении Docsvision выберите сервер, на котором указан адрес Криптосервиса в конфигурационном файле из примера выше.
События работы сервиса записываются в журнал Криптосервиса. Ознакомиться с журналом можно, имея идентификатор контейнера:
sudo docker ps (1) sudo docker logs идентификатор-контейнера (2)
1 | Узнать идентификатор контейнера. |
2 | Посмотреть журнал Криптосервиса. |