Найти тему
Digital

Настройка подписания документов на сервере 1С

Оглавление

Задача: настроить работу 1С-ЭДО в серверном режиме. Чтобы пользователи могли получать и подписывать электронные документы без локальной установки КриптоПро и сертификатов.

Соответственно, электронная подпись (ЭП) должна находиться только на сервере.

Настройка подписания документов на сервере 1С
Настройка подписания документов на сервере 1С

За основу взята инструкция с портала ИТС – смотрите здесь. Но, как это бывает, в процессе настройки возникли нюансы. О них и расскажем.

Итак, что у нас должно быть:

  • клиент-серверная база 1С;
  • криптопровайдер КриптоПро CSP на сервере 1С;
  • доступ к контейнеру ЭП;
  • доступ с правами администратора.

1. Об использовании КриптоПро

На ПК, где работает ваш сервер 1С, требуется установка криптопровайдера. В нашей среде мы используем КриптоПро CSP.

Временная лицензия КриптоПро CSP 5.0 действует 90 дней с момента установки. При условии, что это первая установка на ПК.

На этот период вы получаете бесплатный доступ к набору инструментов CryptoPro. Для оценки функциональности и тестов. По истечении 90 дней необходимо приобрести бессрочную или годовую лицензию.

Для серверных ОС пользовательская лицензия не подойдет – необходимо приобрести специальный лицензионный ключ для сервера. Лицензирование осуществляется по принципу: 1 серверная машина – 1 лицензионный ключ (независимо от количества подключенных пользователей).

Считаем, что ПО КриптоПро установлено, и ключ действующий. Проверьте в настройках:

КриптоПро CSP – вкладка «Общие» – Срок действия
Общие настройки КриптоПро CSP
Общие настройки КриптоПро CSP

2. Расположение ключа ЭП

Расположение контейнеров с закрытыми ключами может быть любым: реестр, жесткий диск, внешний носитель. В зависимости от вашей среды. С условием, что они доступны пользователю, под которым работает служба «Агент сервера 1С:Предприятия 8.3».

Как правило, по умолчанию – это локальная учетная запись «USR1CV8». Учтите, что ваши настройки могут отличаться от типовых.

Проверьте через оснастку «Службы», от имени какого пользователя запускается Агент сервера 1С.

Пуск – Выполнить – services.msc – Агент сервера 1С:Предприятия 8.3 (x86-64) – Вход в систему (Log on)
Вход в систему для службы «1C:Enterprise 8.3 Server Agent (x86-64)»
Вход в систему для службы «1C:Enterprise 8.3 Server Agent (x86-64)»

Сервер клиента – виртуальный, в дата-центре. Ключ ЭП переносили через системный реестр. Столкнулись с первой проблемой: КриптоПро не видит контейнер. При обзоре просто пусто – нет доступных контейнеров.

Решение: дело было в правах на ветку реестра; добавили полномочия для пользователя USR1CV8 – и доступ к контейнеру появился.

Если у вас что-то подобное – смотрите ACL на ветку Keys для SID учетной записи, от имени которой работает сервер 1С, а также права на разделы с контейнерами:

HKLM\SOFTWARE\Wow6432Node\Crypto Pro\Settings\Users\SID\Keys\

3. Установка сертификата

По инструкции необходимо провести установку личного сертификата из контейнера. Как минимум, есть 2 пути:

  • использовать режим «Запуск от имени другого пользователя» для открытия КриптоПро CSP;
  • авторизоваться под пользователем USR1CV8 в системе и там уже попасть в панель управления КриптоПро.
Запуск КриптоПро CSP от имени другого пользователя/Run as different user
Запуск КриптоПро CSP от имени другого пользователя/Run as different user

Вас может ожидать ошибка:

«Вход в систему не произведен: выбранный режим входа для данного пользователя на этом компьютере не предусмотрен» / «Logon failure: the user has not been granted the requested logon type at this computer».

Ошибка запуска приложения от имени пользователя
Ошибка запуска приложения от имени пользователя

Для разрешения откройте локальную политику безопасности и уберите учетную запись USR1CV8 из политики «Запретить локальный вход»:

Пуск – Выполнить – secpol.msc – Параметры безопасности – Локальные политики – Назначение прав пользователя – Запретить локальный вход
Отключить запрет локального входа для USR1CV8
Отключить запрет локального входа для USR1CV8

Повторно откройте КриптоПро CSP и установите сертификат из доступного контейнера. Также через оснастку «Сертификаты» рекомендуется проверить цепочку доверия.

4. Настройки в 1С

Что должно быть активировано:

  • ☑ галка «Электронные подписи» в настройках 1С;
  • ☑ добавлен сертификат в «Настройки электронной подписи и шифрования – вкладка „Сертификаты“»;
  • ☑ во вкладке «Программы» отмечены пункты «Проверять подписи и сертификаты на сервере» и «Подписывать на сервере».
Настройки – Обмен электронными документами – Электронная подпись и шифрование – ☑ Электронные подписи
Настройки – Обмен электронными документами – Электронная подпись и шифрование – Настройки электронной подписи и шифрования
Настройки электронной подписи и шифрования
Настройки электронной подписи и шифрования

Подробнее о параметрах – что означают:

  • «Проверять подписи и сертификаты на сервере» – позволяет не устанавливать программу на компьютер пользователя для проверки электронных подписей и сертификатов;
  • «Подписывать на сервере» – позволяет не устанавливать программу и сертификат на компьютер пользователя для подписания; на компьютер, где работает сервер 1С:Предприятия или веб-сервер, использующий файловую информационную базу, должна быть установлена программа и сертификат с закрытым ключом.

Что делать, если в вашей базе 1С не видно этих чекбоксов? А такое может быть, да. – Используйте функции для технического специалиста.

Как включить функции:

Меню – Настройки – Параметры... – ☑ Режим технического специалиста – OK
Включение режима технического специалиста
Включение режима технического специалиста
Меню – Функции для технического специалиста
Функции для технического специалиста
Функции для технического специалиста

Включаем константы:

  • Проверять электронные подписи на сервере;
  • Создавать электронные подписи на сервере.
☑ Проверять электронные подписи на сервере
☑ Проверять электронные подписи на сервере
☑ Создавать электронные подписи на сервере
☑ Создавать электронные подписи на сервере

5. Проверка подписания и шифрования данных

При тестировании сертификата обращайте внимание только на корректность прохождения этапов теста на сервере.

Проверка сертификата
Проверка сертификата

✅ Система настроена. Подписание на клиентских местах должно проходить успешно.

__________

⚡ Подписывайтесь на телеграм-канал, где разбираем настройки 1С по вопросам клиентов. Задавайте вопрос на сайте – постараемся помочь всеми техническими силами. Безопасной и производительной работы в Windows и 1С.