Ошибка "Узел не прошел проверку" при обращении к веб-сервису

Описание проблемы

В платформе 8.3.10 была переработана логика валидации доверенных сертификатов.

При работе в ОС Windows для проверки сертификата происходит обращение к внешнему ресурсу в сети Internet. Для успешного выполнения данной операции у  пользователя, от которого запускается процесс rphost, должна быть возможность обратиться к этому внешнему ресурсу, а также сам ресурс должен быть доступен.

В случае некорректно заданных настроек доступа в Internet после перехода на 8.3.10 с более ранних версий платформы могут возникать ошибки:

а) при обращении к веб-сервисам или получении определения веб-сервиса по причине «ошибка работы с Интернет: Удаленный узел не прошел проверку»

б) при попытке выполнить OpenID-авторизацию вида «Ошибка подключения к OpenID провайдеру», сопровождающиеся появлением в технологическом журнале событий EXCP вида:

00:01.226030-0,EXCP,2,process=rphost,p:processName=base_3,OSThread=6332,t:clientID=7298,t:applicationName=WebServerExtension,t:computerName=server-1,t:connectID=212125,Exception=9db1fa37-b455-4f3f-b8dd-7de0ea7d6da3,Descr="src\Libxml2_Intf.cpp(141):

9db1fa37-b455-4f3f-b8dd-7de0ea7d6da3: Ошибка доступа к файлу 'https://mycloud.ru/openid/e1cib/oid2op': src\HTTPImpl.cpp(2598):

896db6ac-cc39-4065-8298-1bf5fccb9d98: Ошибка работы с Интернет:   Удаленный узел не прошел проверку"

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

 

Диагностика проблемы

В большинстве случаев проблема может быть вызвана отсутствием у пользователя, под которым запускается rphost, доступа к необходимому ресурсу в Internet.

Целенаправленно только сайты, предназначенные для валидации сертификатов, никто не блокирует, поэтому скорее всего у пользователя не доступен ни один сайт (можно легко проверить, запустив браузер от имени данного пользователя – зажать Shift, правой кнопкой мыши на ярлык браузера, «Запустить от имени другого пользователя»). Однако расследование необходимо проводить именно на том примере, на котором ошибка воспроизводится.

Наиболее распространенные причины:

Для подробной диагностики ошибки в случае, если причина оказалась нетривиальной, рекомендуется настроить сбор дополнительных event-логов Windows, согласно описанию, приведенному в статье.

(ссылка: https://www.thebestcsharpprogrammerintheworld.com/2013/09/09/enable-capi2-event-logging-to-troubleshoot-pki-and-ssl-certificate-issues).

Решение проблемы

Про антивирус и firewall все очевидно – проверяем, какие ресурсы блокируются, и понимаем, есть ли в списке нужный нам ресурс (похожий по имени на ссылку на сайт поставщика сертификата, если точное имя сайта неизвестно).

Про настройки прокси и hosts опишем подробнее.

Прокси сервер

1) Запустить Internet Explorer от имени пользователя, под которым работает rphost

2) В меню Свойства браузера (Свойства обозревателя) на закладке Подключения нажать кнопку Настройка сети

3) Если в настройках указано использование прокси-сервера, которая не предусмотрена политикой безопасности (кто-то когда-то установил и забыл) – отключить использование прокси-сервера, сняв соответствующий флаг

4) Если использование прокси действительно предусмотрено, нужно разрешить прямое обращение к ресурсам, на которые пытается обратиться платформа для валидации сертификата, нажав кнопку Дополнительно и указав данный ресурс в качестве исключения для прокси-сервера

Файл hosts

Доступ к некоторым сайтам может блокироваться через файл hosts. Лежит здесь:

Пример того, как блокированный сайт выглядит в файле hosts: