|
Получить сертификат из Крипто ПРО | ☑ | ||
---|---|---|---|---|
0
LeoKeyn
17.04.18
✎
09:03
|
Всем Здравствуйте!
Очень прошу помощи, ибо своего знания не хватает вообще. Задача, соединиться с сервером по POST для отправки данных XML и получения ответа. Для соединения необходимы сертификаты, установленные с помощью Крипто ПРО на внешний контейнер(USB). В систему сертификаты как пользовательский, так и корневые так же установлены (работоспособность проверена стандартной программой для соединения с ними HTTP Link Batch). Но пытаясь отправить запрос-соединение из 1с сервер ругает за отсутствия пользовательского или корневых сертификатов. Подскажите, пожалуйста в чем я ошибся и как не правильно из беру? Так как примеров найти не могу вообще. Заранее огромное спасибо за помощь тем кто откликнется!!! (код прилагаю) ФайлНаОтправкуТело = "D:\Запрос шифр.txt"; Сервер = "test.rb-ei.com"; Ресурс = "https://test.rb-ei.com/cpuEnquiry.asp"; СертификатКлиента = Новый СертификатКлиентаWindows(СпособВыбораСертификатаWindows.Выбирать); СертификатУЦ = Новый СертификатыУдостоверяющихЦентровWindows(); СоединениеЗащита = Новый ЗащищенноеСоединениеOpenSSL(СертификатКлиента, СертификатУЦ); HTTP = Новый HTTPСоединение(Сервер,,"User1","kred-test@12",,,СоединениеЗащита); // Запишем в файл содержимое тела запроса (текст) // Получим размер данных для передачи в заголовок ФайлНаОтправку = Новый Файл(ФайлНаОтправкуТело); HTTPЗапрос = Новый HTTPЗапрос(Ресурс); HTTPЗапрос.УстановитьИмяФайлаТела(ФайлНаОтправкуТело); // Получим временный файл — тело ответа POST запроса ФайлРезультат = ПолучитьИмяВременногоФайла(); РазмерФайлаНаОтправку = XMLСтрока(ФайлНаОтправку.Размер()); // Заголовок создадим в виде соответствия ЗаголовокЗапросаHTTP = Новый Соответствие; // Передаем в заголовках размер и тип данных на отправку ЗаголовокЗапросаHTTP.Вставить("Content-Length", РазмерФайлаНаОтправку); ЗаголовокЗапросаHTTP.Вставить("Content-Type", "application/x-www-form-urlencoded; Charset=windows-1251"); ЗаголовокЗапросаHTTP.Вставить("Connection", "Close"); HTTPЗапрос.Заголовки = ЗаголовокЗапросаHTTP; // Отсылаем POST запрос на обработку. HTTP.ОтправитьДляОбработки(HTTPЗапрос, ФайлРезультат); // Получим ответ ТекстовыйФайлОтвета = Новый ТекстовыйДокумент; ТекстовыйФайлОтвета.Прочитать(ФайлРезультат, КодировкаТекста.ANSI); ТекстовыйФайлОтвета.Записать("d:\123456.txt"); |
|||
1
LeoKeyn
17.04.18
✎
10:04
|
(0) Может кто то сможет подсказать как это переделать через Новый COMОбъект("WinHttp.WinHttpRequest.5.1");???
Проде как пишут через него должно сработать по человечески:-) |
|||
2
LeoKeyn
17.04.18
✎
10:12
|
Очень прошу помочь, никогда не работал с этим, а понять очень нужно
|
|||
3
timurhv
17.04.18
✎
10:25
|
Может типовые посмотреть? Конфигурация на управляемых формах? Сервер - отдельная машина? Если да, то откуда она узнает о сертификатах на клиентских?
|
|||
4
LeoKeyn
17.04.18
✎
10:28
|
(3) файловая база. Управляемое приложение, код выполняется на клиенте
|
|||
5
timurhv
17.04.18
✎
10:32
|
(4) А сам КриптоПро?
|
|||
6
LeoKeyn
17.04.18
✎
10:32
|
(5) Сам крипто ПРО на этой же машине. Или в чем вопрос?
|
|||
7
LeoKeyn
17.04.18
✎
10:33
|
(5) Все работает при попытке зайти через IE. 1с коннектиться не хочет
|
|||
8
timurhv
17.04.18
✎
10:34
|
(7) БСП подключить типовую?
https://its.1c.ru/db/bsp244doc#content:1846:1 |
|||
9
LeoKeyn
17.04.18
✎
10:37
|
(8) и типо как код там посмотреть?
|
|||
10
timurhv
17.04.18
✎
10:39
|
(9) Можешь код глянуть, можешь саму БСП включить. Если типовая конфигурация - там уже должна быть БСП.
Но там вроде не через https. |
|||
11
Широкий
17.04.18
✎
11:05
|
(0)Обмен с ОКБ? :))
Интересно - не оду ли задачу мы делаем? Стукни мне в асю, дам подсказку |
|||
12
LeoKeyn
17.04.18
✎
11:12
|
(11) напиши асю, очень может быть)
|
|||
13
LeoKeyn
17.04.18
✎
11:12
|
(11) да ОКБ)
|
|||
14
LeoKeyn
17.04.18
✎
11:13
|
(10) конфа самописка
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |