При переводе файловой информационной базы 1С:Розница на веб-сервер для ускорения работы пользователей в локальной сети часто возникает сбой при обращении к сервисам маркировки «Честный Знак» (ГИС МТ). Платформа выдает ошибку вида: «Не удалось запросить данные ГИС МТ по причине: При отправке запроса api/v4/true-api/cdn/info возникла ошибка. Текст ошибки: HTTP-запрос не отправлен. Удаленный узел не прошел проверку: Не удалось выполнить проверку отзыва сертификата». Разберем причины такого поведения и выясним, как восстановить корректный обмен с сервисом маркировки.
Проанализируем архитектуру работы файловой базы через веб-сервер Microsoft IIS. В отличие от прямого подключения через тонкий клиент, при веб-публикации весь серверный код конфигурации выполняется в контексте рабочего процесса веб-сервера w3wp.exe. Это накладывает несколько системных ограничений:
Load User Profile = False). В результате криптографическая подсистема Windows CryptoAPI не может инициализировать кэш списков отзыва сертификатов (CRL) и временные каталоги.certmgr.msc), процесс веб-сервера не имеет к ним доступа. Сертификаты должны располагаться в хранилище всей системы (certlm.msc).Рассмотрим проверенное на практике решение проблемы. В среде Windows веб-сервер Apache 2.4 традиционно развертывается как системная служба, запускаемая под учетной записью Local System (или специально выделенной сервисной записью). В отличие от IIS, служба Apache имеет полный доступ к сетевому стеку и системному окружению Windows, что исключает ошибки подсистемы CryptoAPI при обращении к узлам ГИС МТ.
Разберем переход на Apache по шагам:
Если инфраструктурные требования не позволяют отказаться от IIS, проанализируем параметры, которые необходимо скорректировать для успешного прохождения проверки цепочек сертификатов.
NetworkService или выделенного системного пользователя с правами выхода в сеть.conf.cfg, расположенный в каталоге общих настроек платформы (например, C:\Program Files\1cv8\conf\conf.cfg), и добавляем директиву:
IgnoreServerCertificatesChainRevocationSoftFail=true
После внесения изменений обязательно выполняем команду iisreset в командной строке для перезапуска рабочих процессов.certlm.msc. Убеждаемся, что корневые и промежуточные сертификаты УЦ Минцифры установлены в разделы «Доверенные корневые центры сертификации» и «Промежуточные центры сертификации» именно локального компьютера, а не текущего пользователя.Если ошибка проверки сертификата сохраняется, выясним точный узел, к которому не удается получить доступ. Для этого используем встроенный журнал трассировки Windows:
eventvwr.msc).Verify Chain Policy или Build Chain. В описании события будет указан прямой URL-адрес файла списка отзыва (.crl), запрос к которому завершился таймаутом или ошибкой доступа.