Задача: настроить работу 1С-ЭДО в серверном режиме. Чтобы пользователи могли получать и подписывать электронные документы без локальной установки КриптоПро и сертификатов.
Соответственно, электронная подпись (ЭП) должна находиться только на сервере.
За основу взята инструкция с портала ИТС – смотрите здесь. Но, как это бывает, в процессе настройки возникли нюансы. О них и расскажем.
Итак, что у нас должно быть:
- клиент-серверная база 1С;
- криптопровайдер КриптоПро CSP на сервере 1С;
- доступ к контейнеру ЭП;
- доступ с правами администратора.
1. Об использовании КриптоПро
На ПК, где работает ваш сервер 1С, требуется установка криптопровайдера. В нашей среде мы используем КриптоПро CSP.
Временная лицензия КриптоПро CSP 5.0 действует 90 дней с момента установки. При условии, что это первая установка на ПК.
На этот период вы получаете бесплатный доступ к набору инструментов CryptoPro. Для оценки функциональности и тестов. По истечении 90 дней необходимо приобрести бессрочную или годовую лицензию.
Для серверных ОС пользовательская лицензия не подойдет – необходимо приобрести специальный лицензионный ключ для сервера. Лицензирование осуществляется по принципу: 1 серверная машина – 1 лицензионный ключ (независимо от количества подключенных пользователей).
Считаем, что ПО КриптоПро установлено, и ключ действующий. Проверьте в настройках:
КриптоПро CSP – вкладка «Общие» – Срок действия
2. Расположение ключа ЭП
Расположение контейнеров с закрытыми ключами может быть любым: реестр, жесткий диск, внешний носитель. В зависимости от вашей среды. С условием, что они доступны пользователю, под которым работает служба «Агент сервера 1С:Предприятия 8.3».
Как правило, по умолчанию – это локальная учетная запись «USR1CV8». Учтите, что ваши настройки могут отличаться от типовых.
Проверьте через оснастку «Службы», от имени какого пользователя запускается Агент сервера 1С.
Пуск – Выполнить – services.msc – Агент сервера 1С:Предприятия 8.3 (x86-64) – Вход в систему (Log on)
Сервер клиента – виртуальный, в дата-центре. Ключ ЭП переносили через системный реестр. Столкнулись с первой проблемой: КриптоПро не видит контейнер. При обзоре просто пусто – нет доступных контейнеров.
Решение: дело было в правах на ветку реестра; добавили полномочия для пользователя USR1CV8 – и доступ к контейнеру появился.
Если у вас что-то подобное – смотрите ACL на ветку Keys для SID учетной записи, от имени которой работает сервер 1С, а также права на разделы с контейнерами:
HKLM\SOFTWARE\Wow6432Node\Crypto Pro\Settings\Users\SID\Keys\
3. Установка сертификата
По инструкции необходимо провести установку личного сертификата из контейнера. Как минимум, есть 2 пути:
- использовать режим «Запуск от имени другого пользователя» для открытия КриптоПро CSP;
- авторизоваться под пользователем USR1CV8 в системе и там уже попасть в панель управления КриптоПро.
Вас может ожидать ошибка:
«Вход в систему не произведен: выбранный режим входа для данного пользователя на этом компьютере не предусмотрен» / «Logon failure: the user has not been granted the requested logon type at this computer».
Для разрешения откройте локальную политику безопасности и уберите учетную запись USR1CV8 из политики «Запретить локальный вход»:
Пуск – Выполнить – secpol.msc – Параметры безопасности – Локальные политики – Назначение прав пользователя – Запретить локальный вход
Повторно откройте КриптоПро CSP и установите сертификат из доступного контейнера. Также через оснастку «Сертификаты» рекомендуется проверить цепочку доверия.
4. Настройки в 1С
Что должно быть активировано:
- ☑ галка «Электронные подписи» в настройках 1С;
- ☑ добавлен сертификат в «Настройки электронной подписи и шифрования – вкладка „Сертификаты“»;
- ☑ во вкладке «Программы» отмечены пункты «Проверять подписи и сертификаты на сервере» и «Подписывать на сервере».
Настройки – Обмен электронными документами – Электронная подпись и шифрование – ☑ Электронные подписи
Настройки – Обмен электронными документами – Электронная подпись и шифрование – Настройки электронной подписи и шифрования
Подробнее о параметрах – что означают:
- «Проверять подписи и сертификаты на сервере» – позволяет не устанавливать программу на компьютер пользователя для проверки электронных подписей и сертификатов;
- «Подписывать на сервере» – позволяет не устанавливать программу и сертификат на компьютер пользователя для подписания; на компьютер, где работает сервер 1С:Предприятия или веб-сервер, использующий файловую информационную базу, должна быть установлена программа и сертификат с закрытым ключом.
Что делать, если в вашей базе 1С не видно этих чекбоксов? А такое может быть, да. – Используйте функции для технического специалиста.
Как включить функции:
Меню – Настройки – Параметры... – ☑ Режим технического специалиста – OK
Меню – Функции для технического специалиста
Включаем константы:
- Проверять электронные подписи на сервере;
- Создавать электронные подписи на сервере.
5. Проверка подписания и шифрования данных
При тестировании сертификата обращайте внимание только на корректность прохождения этапов теста на сервере.
✅ Система настроена. Подписание на клиентских местах должно проходить успешно.
__________
⚡ Подписывайтесь на телеграм-канал, где разбираем настройки 1С по вопросам клиентов. Задавайте вопрос на сайте – постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.