Почему подпись контрагента в 1С:ЭДО отображается как неверная, но становится верной при ручной проверке, и как это исправить?

Системный администратор 1С v8.3 (Управляемые формы) 1С:Комплексная автоматизация IT и автоматизация бизнеса
← На главную

После обновления конфигураций 1С (например, 1С:Комплексная автоматизация, 1С:ERP или 1С:Бухгалтерия) пользователи часто сталкиваются с крайне неприятной ситуацией. При получении новых электронных документов через встроенный ЭДО на вкладке Подписи система сообщает, что подпись контрагента не верна. Однако, если нажать на эту подпись правой кнопкой мыши и выбрать пункт Проверить подпись, её статус мгновенно меняется на «Верна». Вручную обрабатывать сотни документов — невыполнимая задача. В этой статье мы подробно разберем, почему возникает эта проблема и как ее решить раз и навсегда.

Выясняем техническую причину проблемы

Для того чтобы понять, почему статус подписи ведет себя столь странно, проанализируем архитектуру работы криптографии в современных версиях 1С. В новых релизах конфигураций, использующих современные версии Библиотеки стандартных подсистем (БСП), процесс получения документов автоматизирован. Загрузка документов из сервиса ЭДО происходит в фоновом режиме с помощью регламентных заданий.

Когда регламентное задание загружает документ, платформа 1С пытается сразу выполнить автоматическую проверку электронной подписи. Этот процесс происходит на стороне сервера 1С:Предприятия. Именно здесь и кроется ключевое различие между автоматической и ручной проверками:

  1. Автоматическая проверка (на сервере): Фоновое задание выполняется в контексте системной учетной записи, под которой запущена служба сервера 1С:Предприятия (например, USR1CV8 или SYSTEM). На сервере часто отсутствуют необходимые корневые и промежуточные сертификаты удостоверяющих центров (УЦ) контрагентов, а также корневой сертификат Минцифры (Минкомсвязи). Без этой цепочки доверия серверная проверка завершается ошибкой, и документу присваивается статус «Подпись неверна».
  2. Ручная проверка (на клиенте): Когда пользователь открывает документ на своем рабочем компьютере и запускает проверку вручную, этот вызов перенаправляется на локальный криптопровайдер (например, КриптоПро CSP), установленный на его ПК. Поскольку на компьютере пользователя все сертификаты УЦ уже настроены и установлены, цепочка доверия успешно выстраивается, и статус меняется на «Верна».

Рассмотрим четыре практических способа устранения этой проблемы — от самого быстрого до фундаментального.

Способ 1. Отключение проверки подписей на сервере (быстрое решение)

Если в вашей организации нет строгой необходимости выполнять валидацию подписей именно вычислительными мощностями сервера, проверку можно полностью перенести на сторону клиентских компьютеров. Разберем по шагам, как это сделать:

  1. Откройте программу 1С под пользователем с правами администратора.
  2. Перейдите в раздел Администрирование, затем выберите пункт Общие настройки.
  3. Разверните подраздел Электронная подпись и шифрование и перейдите по ссылке Настройки электронной подписи и шифрования.
  4. В открывшемся окне перейдите на вкладку Программы.
  5. Найдите и снимите флажок Проверять подписи и сертификаты на сервере.
  6. Нажмите кнопку Записать и закрыть для сохранения изменений.

После отключения этой опции фоновые задания сервера перестанут принудительно проверять подписи в момент загрузки документов. Валидация будет происходить на компьютерах пользователей в момент открытия или подписания документов, что мгновенно решит проблему ложных статусов.

Способ 2. Правильная установка корневых сертификатов на сервере 1С

Если вы хотите сохранить автоматическую проверку подписей фоновыми заданиями на сервере, потребуется установить всю цепочку доверия непосредственно в операционную систему сервера 1С. Основная ошибка администраторов заключается в том, что они устанавливают сертификаты в хранилище своей личной учетной записи, к которой у службы сервера 1С нет доступа.

Проанализируем правильный алгоритм установки на примере ОС Windows Server:

  1. Скачайте актуальные корневые сертификаты головного удостоверяющего центра Минцифры РФ (для ГОСТ-2012) и промежуточные сертификаты тех УЦ, которые используют ваши контрагенты (например, Тензор, Калуга Астрал, Такском).
  2. Запустите консоль сертификатов локального компьютера. Для этого нажмите сочетание клавиш Win + R, введите команду mmc и нажмите Enter.
  3. В меню выберите Файл — Добавить или удалить оснастку. Выберите оснастку Сертификаты, нажмите Добавить и обязательно выберите вариант учетной записи компьютера (Local Computer), а не текущего пользователя.
  4. Перейдите в ветку Доверенные корневые центры сертификации — Реестр (или Сертификаты).
  5. Нажмите правой кнопкой мыши, выберите Все задачи — Импорт и укажите путь к скачанному корневому сертификату Минцифры.
  6. Для промежуточных сертификатов УЦ выполните аналогичную процедуру, но импортируйте их в ветку Промежуточные центры сертификации.

Если сервер 1С работает под управлением ОС Linux, импорт сертификатов выполняется через консоль криптопровайдера. Посмотрим на пример команды для импорта корневого сертификата в хранилище КриптоПро CSP под учетной записью администратора:


/opt/cprocsp/bin/amd64/certmgr -inst -store root -file /path/to/mintsifra_root.cer

А также импорт промежуточного сертификата:


/opt/cprocsp/bin/amd64/certmgr -inst -store ca -file /path/to/intermediate_uc.cer

Способ 3. Проверка доступа к спискам отзыва сертификатов (CRL)

Даже при наличии установленных корневых сертификатов серверная проверка может выдавать ошибку «Подпись неверна», если сервер 1С изолирован от интернета. При валидации подписи криптопровайдер обязан обращаться к серверам УЦ для скачивания актуальных списков отзывов (CRL).

Для решения этой проблемы примените один из следующих подходов:

Способ 4. Установка исправлений (патчей) 1С

Иногда некорректная проверка на сервере вызвана внутренними ошибками самой платформы или конфигурации 1С, связанными с изменением стандартов проверки машиночитаемых доверенностей (МЧД) или алгоритмов ГОСТ. Фирма 1С оперативно реагирует на такие проблемы и выпускает оперативные исправления.

Рекомендуем проверить наличие обновлений:

  1. Перейдите в раздел Администрирование — Обслуживание — Обновление программы.
  2. Откройте пункт Установка обновлений и исправлений (патчей).
  3. Разрешите системе загрузить и установить критические исправления. Обратите особое внимание на патчи, в описании которых упоминается ЭДО, МЧД или работа с криптографией (например, патчи серии EF_00_xxxxxx).

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

← На главную