Столкнулся с проблемой, когда веб-сервис работает по SSL протоколу, и "1С-ка" никак не хотела работать с этим веб-сервисом, потому, что у сервиса "кривой сертификат". И начал искать информацию...
Все сертификаты, которые "знает" 1С:Предприятие перечислены в текстовом виде в файле cacert.pem директории <путь установки 1С>\bin\. Но как получить информацию в таком виде, я нашёл не сразу. Опытным путём по ключевым словам на зарубежном солюшене нашёл кое-какую инфу. Для начала нужен сам сертификат веб-сервиса. Затем нужно скачать утилиты Open-SSL: http://www.slproweb.com/products/Win32OpenSSL.html (линукс: ищем в репозиториях openssl)
следующая команда команда экспортирует сертификат в текстовый формат PEM:
Само собой, Вы должны изменить пути входящего и исходящего файла. Исходящий файл может не существовать. После выполнения команды на экране Вы увидите MD5 Fingerprint. Скопируйте его - с этой строки начинайте добавление своего сертификата в файл cacert.pem. После строки контрольной суммы сертификата, нужно добавить в файл cacert.pem содержимое файла, в который Вы экспортировали сертификат. Всё.
Инструмент представляет собой обработку для проведения свёртки или обрезки баз данных. Работает на ЛЮБЫХ конфигурациях (УТ, БП, ERP и т.д.). Поддерживаются управляемые и обычные формы. Может выполнять свертку сразу нескольких баз данных и выполнять их автоматически без непосредственного участия пользователя.
Роли… Вы тратите много времени и сил на подбор ролей среди около 2400 в ERP или 1500 в Рознице 2, пытаясь понять какими правами они обладают? Вы все время смотрите права в конфигураторе или отчетах чтоб создать нормальные профили доступа? Вы хотите наглядно видеть какие права дает профиль и редактировать все в простом виде? А может хотите просто указать подсистему и дать права на просмотр и добавление на объекты и не лезть в дебри прав и чтоб обработка сама подобрала нужные роли? Все это теперь стало возможно! Обновление от 18.09.2024, версия 1.2
Расширение позволяет без изменения кода конфигурации выполнять проверки при вводе данных, скрывать от пользователя недоступные ему данные, выполнять код в обработчиках. Не изменяет данные конфигурации, легко устанавливается практически на любую конфигурацию на управляемых формах.
Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).
Данная разработка позволит решить вопрос с резервным копированием Ваших баз в автоматическом режиме, расположенных на сервере 1С. Система умеет ставить блокировки на вход, блокировать фоновые задания, принудительно отключать сеансы пользователей. И все это система делает в автоматически при создании бэкапа (или через команду). Выгрузка происходит в родной формат 1С - .dt. Так же система умеет архивировать данные выгрузки с установкой пароля. Умеет менять расширение файла zip или dt на любое указанное вами, что позволит сохранить выгрузки от шифровальщика. Может удалять старые копии выгрузок, оставляя указанное количество резервных копий, начиная с самой поздней. Только для WINDOWS!
Конфигурация Комплексная автоматизация 1.1 (и УПП 1.3 тоже) хранит файлы и изображения в справочнике Хранилище дополнительной информации в реквизите Хранилище типа ХранилищеЗначений. Та же история с ВложениямиЭлектроннойПочты. Но при этом присоединенные файлы в Электронном документообороте хранит в томах на диске. Эта доработка позволяет использовать стандартный механизм хранения файлов, изображений и вложений электронных писем в томах на диске. При этом можно разделить тома хранения по объектам конфигурации.
Многие сталкиваются с проблемой когда изображения, находящиеся в базе разные по объему и размерам. Менеджеры могут добавить файлы в очень высоком разрешении, объемом свыше 20 Мегабайт.
База данных становится слишком большой, выгрузка на сайт идёт медленно и требуется много место на хостинге.
Как сжать картинки и уменьшить размер базы 1С?
Это можно сделать с помощью данной обработки.
Существует возможность выбрать различные варианты для того чтобы уменьшить картинки: в разы, в процентах от первоначального объема, а также сделать картинки одинаковой ширины.
В результате размер базы 1С значительно сократится (в зависимости от количества и размера картинок), а изображения станут небольшого объема, равными по ширине, почти без потери качества.
Работает на управляемых формах для УТ 11, КА, ERP.
1.
Aleksey.Bochkov
368112.09.11 11:24 Сейчас в теме
Подготовку сертификата можно было сделать проще - в IE открываете ресурс, открываете сертификат на просмотр, на закладке "Состав" жмете "Копировать в файл.." и выбираете формат "Файлы X.509 (.CER) в кодировке Base-64".
При выполнении команды происходит такая ошибка:
OpenSSL> x509 -inform der -in C:\ThawteSSLCA.cer -out C:\out.pem -text -fingerprint -md5
unable to load certificate
5756:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:.\crypto\asn1\tasn_dec.c:1319:
5756:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:.\crypto\asn1\tasn_dec.c:381:Type=X509
error in x509
Автору заметки. Самый простой способ выдрать сертификат -- с помощью хрома, клацаем на замок в адресной строке, просмотреть сертификат, потом клацаем на вторую закладку, внизу будет кнопка, копировать в файл. Дальше появляется мастер экспорта сертификатов, в нем выбираем самый верхний крыжик (он по умолчанию там стоит), формат X509 DER, сохраняем в файло, дальше запускаем вашу строчку, после этого копируем МД5 сумму которую выдаст в консоль.... ну а дальше копипастим сертификат в конец файла.
Коллеги, подскажите, пожалуйста, как сделать чтобы заработало
Делаю следующим образом:
1. открываю в браузере ссылку на файловое хранилище дропбокса, чтобы получить его сертификат
https://dl.dropboxusercontent.com 2. Нахожу сертификат удостоверяющего центра DigiCert Root CA и CA-3 которые в цепочке удостоверяют сертификат для dropboxusercontent.com
3. Выгружаю их в файлы *.cer по инструкции и запускаю конвертацию в Формат PEM.
C:\OpenSSL-Win32\bin>openssl x509 -inform der -in c:\digicertCA3.pem -text -fingerprint -md5 > c:\digicertCA3.txt
4. Получаю два файлика *.pem и *.txt
5. Копирую из обоих инфу и вставляю в конец cacert.pem по подобию уже имеющихся там записей.
6. Запускаю 1С и все равно выскакивает та-же ошибка.
1. Качаем подходящий дистрибутив http://www.slproweb.com/products/Win32OpenSSL.html 2. После установки нужно указать переменную, открываем командную строку под админом вводим команду
set OPENSSL_CONF=D:\OpenSSL-Win32\bin\openssl.cfg
После этого программа начинает работать
3. В браузере открываем урл где можно посмотреть сертификат, открываем просмотр цепочки сертификатов
Я пользовался Firefox поэтому дальше буду описывать действия для него
Открываем сертификат - подробнее
4. Сохраняем каждый сертификат из цепочки по 2 раза в разных форматах
лучше использовать короткие понятные пути
1й формат
4.1 Экспортировать, выбираем тип файла Сертификат X.509 в формате PEM (*.crt:*.pem)
повторяем для всех сертификатов цепочки
2й формат
4.1 Экспортировать, выбираем тип файла Сертификат X.509 в формате DER (*.der)
повторяем для всех сертификатов цепочки
Далее открываем командную строку
вводим команду, переходим в папку с Open ssl
cd c:\OpenSSL-Win64\bin
Далее формируем подпись
c:\OpenSSL-Win64\bin>openssl x509 -inform der -in D:\p.der -out D:\textcert.pem -text -fingerprint -md5
На экране отображается сгенерированная подпись и сертификат
Через пометить выбираем полученный результат, копируем и добавляем в конец файла
C:\Program Files (x86)\1cv8\8.3.5.1460\bin\cacert.pem
Добавленный результат форматируем
Делаем заголовок
Имя для заголовка лучше брать из добавляемого сертификата
Просмотр сертификата - Выбираем сертификат - Внизу поле субъект CN = Symantec Class 3 EV SSL CA - G3
из него забираем заголовок
Symantec Class 3 EV SSL CA - G3
переносим MD под заголовок
Получается:
Symantec Class 3 EV SSL CA - G3
====================
1. Качаем подходящий дистрибутив http://www.slproweb.com/products/Win32OpenSSL.html (я скачал первый из списка)
2. Устанавливаем, ничего не меняя в настройках. После установки нужно указать переменную, открываем командную строку под админом вводим команду
set OPENSSL_CONF=C:\OpenSSL-Win32\bin\openssl.cfg
После этого программа начинает работать. Я не закрывал командную строку, просто свернул
3. В Хроме открываем сайт где установлен сертификат, щелкаем по замочку слева от адреса, далее открываем сертификат, открываем вкладку путь сертификации. Будет видна иерархия сертификатов.
4. Выделяем самый верхний сертификат, щелкаем по кнопке Просмотр сертификата
4.1 Открываем вкладку Состав
4.2 Жмем по кнопке Копировать в файл
4.3 Открывается Мастер экспорта, экспортируем в формате "Файлы X.509 (.CER) в кодировке DER"
4.4 Указываем место и имя сохранения (например: C:\1.cer)
4.5 Повторяем действия для остальных сертификатов иерархии
Далее открываем свернутую командную строку
вводим команду: cd c:\OpenSSL-Win32\bin
Жмеме Enter
Далее команда
openssl x509 -inform der -in С:\1.cer -out D:\textcert.pem -text -fingerprint -md5
Открываем блокнотом файл textcert.pem
Также открываем блокнотом файл по пути (путь может немного отличаться)
C:\Program Files\1cv8\8.3.5.1460\bin\cacert.pem
Выделяем и копируем содержимое файла textcert.pem и вставляем в самый низ файла cacert.pem
!!!После каждой генерации файла textcert.pem, я его удалял!!!
Делаем заголовок:
Имя для заголовка лучше брать из добавляемого сертификата:
Просмотр сертификата - Состав - выделяем строку субъект - Внизу поле например: CN = DST Root CA X3
из него копируем заголовок
DST Root CA X3
переносим скопированное название в заголовок скопированного текста из textcert.pem
Также перенесем строку MD5 Fingerprint вначало, перед словом Certificate:
Для примера, получится должно вот так:
DST Root CA X3
======================================
Аналогично повторяем для всех сертификатов цепочки
Когда добавили все сертификаты в файл, сохраните его и желательно перезагрузите компьютер. Так как у меня 1с крутится на сервере SQL от Microsoft я перезагрузил сам сервер. Без перезагрузки не хотел соединяться с сайтом.
Если короче, то делаем по аналогии уже добавленных сертификатов в файле cacert.pem
(12)Добрый день,
Подскажите, пжслт, с какими параметрами вы создаете объект ЗащищенноеСоединениеOpenSSL, после того как формировали файл cacert.pem.
Как бы не пробовал пишет "Ошибка инициализации SSL".
Привет всем ! Опишу как мы решали данную проблему.
Используем сервис COMARCH EDI для электронного документооборота через провайдера Корус Консалтинг.
В один прекрасный момент при запуске обмена получили ошибку как в заголовке темы.
после общения с тех.поддержкой Коруса скачали с сайта https://www.ecod.pl/webserv2/EDIservice.asmx сертификаты и затем их установили - результат отрицательный.
Продолжили разбираться дальше...
в итоге решили сделать так...
У пользователей, работающих с корусом :
1. Закрыть 1С
2. Изменить файл C:\Program Files\1cv82\8.2.19.130\bin\cacert.pem ( у вас свои пути)
Добавить в конец файла данные : (Получить их можно открыв сертификаты в блокноте)
сам сертификат плюс дополнительные сертификаты родителей:
Привет всем!
Проделал все манипуляции с сертификатом, но не получается использовать web-сервис.
Буду признателен за подсказку.
Исходные данные:
- сервер Apache с самоподписанным сертификатом
- на нем опубликована база и web-сервис.
При использовании web-сервиса на том же компьютере (Определение = Новый WSОпределения("http://localhost/******")) все проходит без проблем.
При попытке использования web-сервиса по https
ssl = Новый ЗащищенноеСоединениеOpenSSL();
Определения = Новый WSОпределения("https://******", , , , , ssl);
выдает ошибку:
При создании описания сервиса произошла ошибка. URL сервиса: https://******
Код ответа сервера: 403
пришлось поразбираться с данным вопросом, посему, вставлю свои 5 копеек.
для работы соединения по https на 8.2 достаточно добавить в cacert.pem сертификат корневого ЦС из ветки сертификатов. не нужны никакие MD5, текст сертификата, достаточно subject для понимания и собственного, самого сертификата.
Сохраняем файл сертификата корневого ЦС и конвертируем его в формат pem
openssl x509 -in root.cer -inform der -outform pem -subject >1.txt
содержимое файла 1.txt вставляем в конец файла cacert.pem
Важно! Для систем 1С версии 8.2 x64, работающих в клиент-серверном режиме, необходимо поместить сертификат в файл cacert.pem, расположенный на сервере 1С предприятия, в каталоге платформы соответствующей версии (например – C:\Program Files\1cv82\8.2.18.96\bin\cacert.pem).
После модификации cacert.pem, необходимо выполнить перезапуск службы сервера 1С.
Файл cacert.pem читается rphost при первой необходимости, далее, предположительно, полученные данные кэшируются, повторное чтение более не выполняется.
Для файловых баз чтение файла выполняется при каждой попытке установки соединения, т.е. перезапуск клиента 1с не требуется.
На моём примере (платформа 8.2.15.319) в итоге сработало следующее
1. Сохранил все сертификаты, включая корневой, в формате DER
2. Для каждого проделал
cd c:\OpenSSL-Win64\bin
openssl x509 -inform der -in D:\src.der -out D:\out.pem -text -fingerprint -md5
3. Взял cacert.pem из папки bin платформы на нужном сервере
Добавил в него содержимое из всех полученных на шаге 2 *.pem файлов (тупо копи-паст в текстовом редакторе)
4. Вернул полученный cacert.pem на место
5. Перезапустил платформу (клиент 1С). Фоновое задание увидело изменения при следующем запуске
Спасибо! Мне помог данный способ для работы выгрузки товаров с 1с на сервер 1с битрикс. Раньше работали через http, потом получили сертификат и перешли на https и при первой же попытки выгрузить товары, наткнулись на данную ошибку. Делал все как написал пред последний комментатор- METAL. Сохранил и переделал все три сертификата из вкладки Путь сертификации в свойствах сертификата своего сайта. Копипастом скопировал содержание выходных файлов в cacer.pem в папке 1с и все заработало! 1с просто закрыл и открыл, сервер не перезагружал, ни каких дополнительных действий не проводил. И ещё, когда выполнял команду openssl, на экран в окне командной строки мне ни чего не выводилось. Просто получались файлы pem на выходе и все.
Добавлю, что на машинах, где установлен антивирус (например, ESET NOD), сертификат в строке браузера может быть другой, антивирусовский, что может ввести в заблуждение. Сертификат нужно смотреть с машины, на которой не установлен антивирусник. Так же у меня после правок cacert.pem изменения применились сразу же, даже без перезапуска клиентского приложения.