Клиентский сертификат для SSL соединения V8.2 #577329


#0 by svchernova
С горем пополам настроила 1С в части взаимодействия со сторонней базой данных, используя корневой и клиентский сертификаты. Пришлось инсталлировать stunnel, менять там файл конфигурации, конвертировать файлы клиентского и серверного сертификатов.. Слишком много, и, я думаю, слишком сложно. Может быть, я неправа и 1С прекрасно видит клиентский сертификат, работающий по SSL соединению без установки дополнительного программного обеспечения (Open SSL, stunnel, конвертирования сертификатов и всякой лабуды)? Кто спец?
#1 by oleg_km
а можно пошаговое описание, как все получилось. Потому что и с горем пополам не очень получается.
#2 by svchernova
Извини, я не поняла.. ты хочешь сделать то же самое? я могу выслать инструкцию, как я это делала.
#3 by svchernova
у меня получилось.
#4 by МимохожийОднако
Выкладывай для всех.
#5 by svchernova
а как выложить?
#6 by svchernova
Описание использования Web-сервисов программой 1С:Предприятие 8.2 через WS-ссылки по протоколу HTTPS с использованием клиентских сертификатов. В программе 1С:Предприятие v8.х существует возможность использовать сторонние Web-сервисы, как посредством протоколов HTTP, так и HTTPS. Для работы с протоколом HTTP используется корневой сертификат, находящийся в папке «Серверный сертификат». Для работы с протоколом HTTPS (защищенное SSL-соединение) используется клиентский сертификат. В случае использования протокола HTTPS программа 1С:Предприятие может использовать сертификаты сервера, но не может использовать сертификаты клиента. Чтобы это обойти, создаётся шифрованный канал с помощью программы stunnel ( ), которая поддерживает сертификаты клиента. Приложение Stunnel, которое необходимо установить на локальный компьютер пользователя, находится в папке «Stunnel/Stunnel». Для интеграции с ЕСБД необходимо следующее: * Компьютер пользователя в локальной сети, на котором будет установлена программа Stunnel, должен использовать стандартный для HTTP порт 80; * Файл серверного сертификата с именем с именем KISC_Root_CA_RSA.crt, расположенный по адресу: (Asb.kz -> Скачать -> утилиты -> Корневой сертификат RSA) и находящийся в папке «Серверный сертификат»; * Файл клиентского сертификата с секретным ключом в формате PKCS#12 с именем openssl_client_pkcs12_sign.pfx, предоставленный поставщиком web-услуг и находящийся в папке «Клиентский сертификат»; Оба сертификата должны быть установлены на компьютере пользователя. Установка серверного сертификата производится в папки, предлагаемые по умолчанию, установка клиентского сертификата производится в папку «Личное». Просмотр сертификатов осуществляется из командного окна с помощью команды: certmgr.msc     Этап 1: Получение файла сертификата в формате .PEM       Программа Stunnel использует сертификаты в формате .PEM, поэтому файлы сертификатов необходимо переконвертировать в формат .PEM. Это можно сделать с помощью пакета OpenSSL ( ). Установочный файл Win32OpenSSL_Light-1_0_0d.exe находится в  папке OpenSSL-Win32Установочный файл. Пакет OpenSSL binary для Windows расположен по адресу: Установить OpenSSL можно в любой каталог. Что необходимо сделать: 1.1 сохранить все сертификаты (если там их "дерево") в DER-кодировке (разрешение файла .cer) Для этого использовать команду certmgr.msc В открывшемся окне менеджера сертификатов необходимо выбрать нужный сертификат. Клиентский сертификат установлен в папке «Личное», серверный установлен в папке «Доверенные корневые центры сертификации». Выделить нужный сертификат, затем в контекстном меню выбрать “Все задачи” -> “Экспорт”. Экспортировать сертификат в DER-кодировке в файл .crt Таким образом экспортировать оба сертификата. 1.2 Сконвертировать полученные файлы в PEM кодировку в файл .crt 1.3 запустить OpenSSL binary (каталог установкиinopenssl.exe) Каждый           сертификат (.crt) выгрузить в текстовый формат .pem Команда openssl: x509 -in certificate.crt -text -outform PEM -out            certificate.pem 1.4  По каждому сертификату получить MD5 Fingerprint Команда openssl: x509 -in certificate.pem -noout -fingerprint -md5 Полученную строку md5  вставить первой в тело сертификата, перед его заголовком. 1.5 В том случае, если протокол HTTPS не используется, необходимо отредактировать файл сертификатов 1С (1С bincacert.pem), добавив в него текст каждого файла .PEM, предваряя его строкой MD5 Fingerprint=... В результате получены файлы серверного и клиентского сертификата client.pem и server.pem соответственно. Для того, чтобы приложение Stunnel использовало эти сертификаты, их необходимо поместить в папку, где установлено это приложение. Необходимо также откорректировать файл конфигурации Stunnel.conf Файлы client.pem, server.pem и stunnel.conf помещены в папку «” Этап 2: настройка приложения Stunnel Программа stunnel будет работать на компьютере с IP-адресом 192.168.0.1 и принимать данные от программы 1С:Предприятие на порту 80 и перенаправлять эти данные на сервер example.org по защищённому каналу. Скачиваем программу stunnel, например по адресу В данное время инсталлятор приложения находится в папке Stunnel (stunnel-4.41-installer.exe) После установки программы stunnel в папку, где находится программа stunnel, помещаем файлы client.pem, и server.pem и подменяем файл   stunnel.conf на откорректированный (папка StunnelФайлы для замены в stunnel) Этап 3: модификация WSDL-файла Необходимо модифицировать WSDL-файл с описанием Web-сервиса. В папке WSDL находятся копии wsdl – файлов. IICWebService.asmx – описание web сервиса от поставщика; IICWebService.wsdl – откорректированное описание web сервиса. Файл поставшика располагается на основном сервере по адресу: Откорректированный файл располагается на тестовом сервере по адресу: После этого файл wsdl можно импортировать в качестве WS-ссылки в программу 1C:Предприятие. Ссылки на полезные статьи :
#7 by oleg_km
Круто. Я сделал с помощью WinHTTP. Но там не получится использовать WS-ссылки, SOAP запросы и ответы создаю и читаю ручками. Зато подключение и работа с сертификатами проще. Так что выбирайте. Или одно из двух
#8 by TimonXPumbA
Добрый день! года 2 назад пробовал подключатся к ЁБД но тогда еще не было сертификатов, т.е. они были но их не запускали в эксплуатацию. тогда я мог подключаться к ЁБД средствами 1С. но потом они включили сертификаты и я тормознулся. потом блосил дело. и вот сейчас опять поднял вопрос... так вот у меня к Вам вопрос: можно ли выложить начальный код подключения к ЁБД включая метод /"AuthenticateUser/"? спасибо
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С