Подключение к хранилищу конфигурации через HTTPS

15.08.18

Интеграция - WEB-интеграция

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

Пакетные файлы

Наименование Файл Версия Размер
пакетный файл для конвертации сертификата crt - pem
.bat 0,20Kb
3
.bat 0.9 0,20Kb 3 Скачать

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

Фабула

Общеизвестные и много где описанные шаги тезисно:

1. Из конфигуратора на выбранном сервере создаём хранилище конфигурации, создаём пользователя Windows, даём ему необходимые (все) разрешения на каталог хранилища

2. создаём сервер "crserver.exe -instsrvc -d [каталог хранилища] -usr [пользователь Windows] -pwd [пароль]" и пробуем подключиться к нему из 1С по адресу

tcp://[имя или IP сервера]/[подкаталог если есть].

Утилита crserver лежит в каталоге x86: "C:\Program files\1cv8\[номер версии конфигурации]\bin\"

x64: "C:\Program files\1cv8 (x86)\[номер версии конфигурации]\bin\"

3. устанавливаем IIS

4. в корневом каталоге (по умолчанию C:\inetpub\wwwroot) создаём подкаталог (например REPO) и в нем создаём текстовый файл (например REPO.cr) следующего содержания

<?xml version="1.0" encoding="UTF-8"?>
<repository connectString="tcp://[имя сервера хранилища]"/> 

5.Заходим в IIS Manager находим созданный каталог и конвертируем его в приложение (правой кнопкой Convert to application) заходим в него и добавляем обработчик 1С в Handler mappings (правая кнопка - add script map. Path = *; Executable = "C:\Program Files\1cv8\[номер версии конфигурации]\bin\wsisapi.dll";name = "1C Web-service Extension"). Если сервер x64 а 1с используете x86 то соответственно изменится путь к dll и в advanced settings вашего application pool надо поставить разрешение использовать 32 битные приложения

6. проверяем что хранилище доступно по адресу  http://[имя веб сервера]/REPO/REPO.cr/[Имя подкаталога с хранилищем если есть]

7. далее если при подключении через https появляется ошибка про узел не прошедший проверку необходимо выполнить следующие шаги:

- Импортировать сертификат сервера в локальный компьютер - доверенные центры сертификации (local computer - central root certificate authoriities)

далее если система "не знает" центр сертификации выдавший этот сертификат, необходимо так же:

- импортировать сертификат удостоверяющего центра в хранилище сертификатов локального компьютера - доверенные центры сертификации

- конвертировать сертификат удостоверяющего центра в формат PEM с помощью утилит OpenSSL (для виндоуз брать например там http://slproweb.com/download/Win64OpenSSL_Light-1_1_0h.exe) 

для конвертации можно написать скрипт следующего содержания (прилагается)

C:\OpenSSL\bin\openssl x509 -inform der -in %1.cer -text -outform PEM -out tmp_%1.pem
C:\OpenSSL\bin\openssl x509 -in tmp_%1.pem -noout -fingerprint -md5 > %1.pem
Type tmp_%1.pem >> %1.pem
del tmp_%1.pem

Далее содержимое PEM файла добавляем к файлу 

C:\Program Files\1cv8\[Номер версии конфигурации]\bin\cacert.pem

C:\Program Files (x86)\1cv8\[Номер версии конфигурации]\bin\cacert.pem

И если всё правильно хранилище будет доступно извне по протоколу https

ps. так же крайне необходимо следить чтобы имя сервера IIS которое используется для подключения к хранилища точно совпадало с именем на которое выдан сертификат (в случае расхождений самый простой вариант - внести правки в файл hosts (C:\Windows\System32\drivers\etc\hosts) чтобы IP IIS соответствовало имя из сертификата.

хранилище конфигурации публикация WEB HTTPS

См. также

Интеграция Альфа Авто 5 / Альфа Авто 6 и AUTOCRM / Инфотек

Сайты и интернет-магазины WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    16208    14    18    

14

Интеграция 1С и Битрикс 24 — модуль синхронизации для обмена задачами

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    18342    10    15    

16

Модуль для обмена "1С:Предприятие 8. УАТ. ПРОФ" с FortMonitor

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    13057    34    8    

13

Автоматическая загрузка файлов (например, прайс-листов) из электронной почты, FTP, HTTP, их обработка и выгрузка на FTP (на сайт) и для других целей

Прайсы WEB-интеграция Ценообразование, анализ цен Файловый обмен (TXT, XML, DBF), FTP Автомобили, автосервисы Оптовая торговля, дистрибуция, логистика Управленческий учет Платные (руб)

Программа с заданным интервалом времени (или по ручной команде) скачивает файлы (например, прайс-листы поставщиков) из различных источников: письма электронной почты, FTP или HTTP-адреса, и сохраняет их в каталог упорядоченной структуры. При этом извлекает файлы из архивов, может переименовывать файлы и менять их формат (csv, xls, txt). Можно настроить выгрузку обработанных файлов на сайт (через FTP-подключение). Программа будет полезна компаниям, у которых есть большое количество поставщиков и/или прайс-листы поставщиков обновляются часто (необязательно прайс-листы, файлы могут быть любого назначения). Собранные таким образом актуальные версии прайс-листов можно выгрузить с помощью программы себе на сайт (или на любой FTP-сервер) или выполнить другие необходимые задачи.

25200 руб.

28.05.2015    85630    26    51    

50

Интеграция с сервисом vetmanager

WEB-интеграция Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бытовые услуги, сервис Платные (руб)

Внешняя обработка разрабатывалась для загрузки документов из Ветменеджер в 1С: Бухгалтерия 3.0

12000 руб.

02.02.2021    16701    43    49    

24
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. biformatus 16.08.18 01:41 Сейчас в теме
А есть способ сделать нормальный адрес, например субдомен.домен.ком/имя подкаталога хранилища?
2. ktb 621 16.08.18 07:29 Сейчас в теме
(1)Если адрес доступен "снаружи", то получаете и привязываете к нему dns-имя любым доступным способом. Если не нравится часть адреса "repo/repo.cr", то nginx поможет.
3. KonS 75 16.08.18 09:33 Сейчас в теме
(1) согласен с (2) - это если только средствами веб-сервера.
4. premierex 204 22.08.18 08:38 Сейчас в теме
Познавательно. Давно работаю с хранилищем конфигурации, а вот с сервером хранилища пока ещё не сталкивался. Добавлю себе в закладки.
5. KonS 75 22.08.18 09:30 Сейчас в теме
(4)в общем случае можно ограничиться первыми двумя шагами. дальше если есть необходимость дать доступ по слабому и/или защищенному каналу
6. premierex 204 22.08.18 09:47 Сейчас в теме
Было бы неплохо ещё и описать работу, например, с Apache (далеко не все используют IIS). Ещё познавательней было бы.
7. KonS 75 22.08.18 10:01 Сейчас в теме
(6)публикации на инфостарте по теме есть и достаточно подробные *например https://infostart.ru/public/646384/ поэтому смысла плодить не вижу. я свои заметки писал, потому как пришлось много источников перелопатить именно по теме https и сертификатов
8. premierex 204 22.08.18 10:03 Сейчас в теме
(7) Спасибо за ссылку. Поизучаю.
9. kernelio 4 15.01.19 10:56 Сейчас в теме
Уточните по расширению файла в каталоге веб-приложения? На ИТС пишут "1ccr" в статье вы указали - "cr". Или это не имеет значения?
10. KonS 75 16.01.19 11:27 Сейчас в теме
(9)Это влияет на то что вы будете писать в адресной строке. напишете 1ccr и в адресе будете соответственно указывать 1ccr. когда публикуете на веб сервере вы указываете обработчик wsisapi.dll из поставки 1с и говорите какие файлы им обрабатывать (правая кнопка - add script map. Path = *; Executable = "C:\Program Files\1cv8\[номер версии конфигурации]\bin\wsisapi.dll";name = "1C Web-service Extension") в строчке path стоит * соответственно все файлы будут им обрабатываться, а для него уже важно именно содержимое а не расширение.
11. user634962_ismdmr 18.06.19 15:26 Сейчас в теме
Добрый день.

Дошел до 7-го пункта, вышло сообщение "Удаленный узел не прошел проверку".

Далее по рекомендациям решения данной проблемы, немного не понятно.

"- Импортировать сертификат сервера в локальный компьютер - доверенные центры сертификации (local computer - central root certificate authoriities)" - это имеется ввиду сертификат IIS экспортировать и далее импортировать в локальный компьютер ?

В IIS ранее настраивал связку https куда указал сгенерированный сертификат. Этого не нужно делать ?

Если есть, дайте пожалуйста ссылку где можно прочитать предысторию вашей инструкции. Желательно с момента генерации ключей :)

Спасибо.
12. KonS 75 19.06.19 17:05 Сейчас в теме
(11)Здравствуйте. В данном случае "Сертификат" это открытый сертификат который выдает узел при подключении по https (см картинку) ссылки на источники не сохранил, можете попробовать поискать по приведенным командам для конвертации
Прикрепленные файлы:
13. DamirI 19.06.19 18:06 Сейчас в теме
(12)
Спасибо за отклик.

К сожалению, ошибка подключения до сих пор присутствует. Версия платформы 8.3.12.1529.

Через браузер локального компьютера, стартовая страница IIS отображается, правда сертификат от COMODO. На самом же сервере, где установлен IIS, в браузере страница открывается под сертификатом что я ранее сам генерировал.

Экспортировал сертификат из IE, и преобразовал в файл *.pem. Все содержимое, вместе с md5 скопировал/вставил в файл "cacert.pem".

В итоге, ничего не помогло.

Может дело в именовании сервера и сертификата, о том что Вы говорили в конце поста ? Правда, не совсем ясно, о каких именах идет речь, что с чем должно совпадать :)

Спасибо.
Прикрепленные файлы:
14. DamirI 21.06.19 21:37 Сейчас в теме
(12) KonS, скажите, вы какую версию платформы использовали для настройки хранилища на тот момент? Дело в том, что есть ли смысл настраивать файл cacert.pem, если версия платформы 8.3.12? Что по идее должно уметь просматривать сертификаты из хранилища операционной системы.

P.S. Так и не получилось подключиться к хранилищу через https.
15. websamson 307 29.07.22 10:12 Сейчас в теме
Свои 5 копеек:
Создаём сервер "crserver.exe -instsrvc -d [каталог хранилища]". Выдавал ошибку при указании пользователя и пароля, поэтому создал сервер под текущим пользователем и в свойствах службы заменил на нужного пользователя

Создаем хранилище с указанием пути вида: tcp://[мой_сервер]/[имя_хранилища]
в папке C:\inetpub\wwwroot создаем каталог, например, Repo и в нем создаем файл Repo.1ccr с содержимым:
<?xml version="1.0" encoding="UTF-8"?>
<repository connectString="tcp://localhost:1542"/>

Преобразовываем в IIS папку в приложение

В свойствах приложения указываем нужный пул (если несколько версий 1С на веб сервере)

В сопоставлении обработчиков прописываем Путь запроса: *.1ccr, исполняемый файл: C:\Program Files\1cv8\8.3.20.1710\bin\wsisapi.dll, имя: 1C Web-service Extension

В строке подключения пишем: http://[имя_сервера]/[имя_каталога_IIS]/Repo.1ccr/[имя_хранилища]

Еще есть отличная статья по теме:https://hobbycomp.ru/soft/nastrojka-servera-hranilishha-1s/
Оставьте свое сообщение