|
1 / 1 / 0
Регистрация: 16.12.2015
Сообщений: 1
|
||||||||||||||||
.NET 4.x Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ16.12.2015, 11:46. Показов 175539. Ответов 999
Здравствуйте!
Передо мной стоит задача интеграции с системой ГИС ЖКХ (https://dom.gosuslugi.ru/) программой, написанной на языке C#, .NET Framework 4 Данный сервис предоставляет SOAP веб-сервисы для приема и передачи информации, соединение защищается сертификатом по алгоритму ГОСТ. Каждый элемент внутри тела SOAP сообщения подписывается сигнатурой XAdES-BES. На данный момент для осуществления защищённого соединения я использую «МагПро КриптоТуннель» (stunnel) со следующими настройками: Конфигурация stunnel (stunnel.conf)
verify=2
client=yes CAFile=CA-test2-cryptopro.pem engine=gost usb_eject=yes sslVersion=TLSv1 taskbar=yes DEBUG=7 [pseudo-https] protocol = http accept = 127.0.0.1:8754 connect = 54.76.42.99:60045 ciphers = GOST2001-GOST89-GOST89 TIMEOUTclose = 0 cert=test.pem key=test.key Для обмена SOAP сообщениями я использую стандартный сервис WCF с прокси-классами, сгенерированные из WSDL файлов. Для подписи SOAP сообщений сигнатурой использую ниже представленный класс: C#. Класс для подписи исходного SOAP сообщения
В результате после подписи элемента "exportNsiItemRequest" SOAP-сообщение выглядит следующим образом: XML. Подписанное SOAP сообщение
Проблема заключается в том, что ответ от сервера приходит следующий: ru.lanit.security.crypto.CryptoException : ЭП не прошла проверку: Invalid XML Signature Текст ответного сообщения следующий: XML. SOAP-ответ от сервера
Подскажите пожалуйста: 1) Как сделать валидную подпись, которая будет проходить проверку сервером, используя WCF ? 2) Как с помощью средств CryptoPro.NET отказаться от использования «МагПро КриптоТуннель» ?
1
|
||||||||||||||||
| 16.12.2015, 11:46 | |
|
Ответы с готовыми решениями:
999
Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (3) Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (5) Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (4) |
|
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
|
|||||||
| 24.05.2016, 15:21 | |||||||
|
Я проводил экперименты, можно ли обойтись без 'КриптоПро .NET Клиент'. Для себя выяснил следующее: 'КриптоПро .NET Клиент' это надстройка над 'КриптоПро CSP' - без установленной 'КриптоПро CSP' отказывается ставиться. А без 'КриптоПро .NET Клиент' .NET приложение не находит поставщика услуги шифрования по ГОСТ. Но приложение можно отвязать от явной ссылки на CryptoPro.Sharpei.xxx.dll. Для этого нужно немного изменить код представленный Araney: убрать приведение типа к Gost3410CryptoServiceProvider в методе GetXadesSignedXml():
1
|
|||||||
|
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
|
||||||
| 24.05.2016, 15:29 | ||||||
|
hhmm, Благодарю за ответ!)
А я так понимаю пример который выложен тут он работает в связве КриптоПро .NET + CSP? Добавлено через 4 минуты hhmm, Тобишь, чтобы работать с гис жкх надо купить КриптоПро CSP и КриптоПро .NET ну и по всей видимости МагПро КриптоТуннель? Добавлено через 1 минуту hhmm, Да и нафига в конфиге прописан Прокси?
0
|
||||||
|
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
|
||||
| 24.05.2016, 15:35 | ||||
|
1
|
||||
|
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
|
|
| 24.05.2016, 15:40 | |
|
hhmm, Хм... Как интересно... А есть вариант заточить WCF - клиента под весь этот "Пример(Трэш)"
0
|
|
|
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
|
|||||||
| 24.05.2016, 15:59 | |||||||
|
Могу представить кусок кода, который позволяет отвязаться от шифрующего прокси, додумаете его сами под ваши потребности:
0
|
|||||||
|
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
|
|
| 24.05.2016, 16:03 | |
|
hhmm, Не я не проэто... Я про полноценный WCF клиент... не про этот пример подписи чистого soap'а... Я про вот это -
0
|
|
|
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
|
|
| 24.05.2016, 16:08 | |
|
hhmm, Грубо говоря есть у меня вот такое во приложение на котором я пытаюсь понять кишки этого МОНСТРА(api ГИС ЖКХ). На основе этих кишок создать своего внутреннего монстра выполняющего не только требования ФЗ РФ но и внутрикорпоративных бешеных идей руководства)))
0
|
|
|
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
|
|||||||
| 24.05.2016, 16:15 | |||||||
|
написана как и во всех примерах - с использованием в конструкторе одного параметра - названия конечной точки. У всех этих класов есть контруктор принимающий два параметра - binding и endpoint, что позволяет настраивать их внутри приложения программно и как результат отказаться от промежуточного шифрующего туннеля.
0
|
|||||||
|
6 / 5 / 0
Регистрация: 28.03.2016
Сообщений: 34
|
|
| 24.05.2016, 16:20 | |
|
Народ привет всем! Кто уже работает с промышленными данными!?? Помогите крик о помощи, в тех. поддержку написали тоже... Кто как решил проблему когда грузим например дома к договору РСО или ЛС пачками по 1000 штук к договорам и по 100 лс . при возникающих ошибках запрос целиком отбивается сервером и ничего не грузится. что делать? по одному объекту грузить не реально 5сек на запрос 200,000 объектов!!! зачем эти разработчики делают такой ГЕМОРОЙ ВСЕМ! Зачем прирывать загрузку по ошибкам!!!??? С ОбъектыЖелищногоФонда и того хуже там вобще как я понял можно только по одному грузить!!! Дайте мне этих разработчиков!!!! я надеюсь они это читают!!!
0
|
|
|
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
|
|
| 24.05.2016, 16:26 | |
|
hhmm, Да я переживу наличие КриптоТоннеля... У меня проблема с подписью сообщений именно в WCF-клиенте, так сказать по феншую и по ГОСТ))) Я так думаю что, возможно, должно хватить переноса behavior'a но у меня КЛИЕНТ...
Добавлено через 2 минуты mecanizm, Ну во первых, система как говорилось недавно Должна была разрабатываться 7лет... А мы в попыхах бежим и роняем свои яйца о которые поднявшись опять спотыкаемся... Ждёмс...
0
|
|
|
6 / 5 / 0
Регистрация: 28.03.2016
Сообщений: 34
|
|
| 25.05.2016, 10:57 | |
|
Коллеги кто сталкивается с такой проблемой? <ns4:ErrorCode>EXP002002</ns4:ErrorCode>
<ns4:ErrorMessage>Превышено максимальное время обработки запроса</ns4:ErrorMessage> как можно попобороть, без того медленно запросы идут еще и по таймауту отваливаются... не возможно отлаживать обмен!
0
|
|
|
17 / 14 / 0
Регистрация: 22.04.2016
Сообщений: 287
|
|
| 25.05.2016, 11:23 | |
|
mecanizm, С каким тестовым сервером вы работаете?
0
|
|
|
6 / 5 / 0
Регистрация: 28.03.2016
Сообщений: 34
|
|
| 25.05.2016, 12:06 | |
|
0
|
|
|
0 / 0 / 0
Регистрация: 27.01.2016
Сообщений: 9
|
||
| 25.05.2016, 12:11 | ||
|
Пробовал доставать X509Certificate.Subject с подменой на OID и без, получаю ошибку "не удалось установить защищенное соединение..."
0
|
||
|
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
|
|||
| 25.05.2016, 13:01 | |||
|
Мне это нужно было, когда тестовый ключ сделали с CN/Subject = 'Вася' и ОГРН реальной организации. В данном примере в строке string CommonName будет равно 'Вася' Добавлено через 14 минут Если у вас на работе используется (нешифрующий) прокси типа Squid, он может вас не пускать наружу. По умолчанию TLS/SSL на нестандартный порт Squid дропает.
0
|
|||
|
476 / 239 / 114
Регистрация: 12.05.2016
Сообщений: 647
|
||
| 25.05.2016, 16:01 | ||
|
Та же самая байда, половина запросов отвечает <ns4:ErrorMessage>Превышено максимальное время обработки запроса</ns4:ErrorMessage> Техсаппорт Ланита, как обычно, в глухой несознанке
0
|
||
|
6 / 6 / 0
Регистрация: 24.12.2015
Сообщений: 41
|
|
| 25.05.2016, 16:16 | |
|
для вас же баги правят. ну бывают разные нештатные ситуации. как будто у вас 100% всегда всё работает. да и уверен что у вас не такие нагрузки на систему. и вот только не нужно мне заливать что денег вбухано много, а толку ноль. откуда вы знаете? хоть бы слово тут прочитал что после обновления исправилась ошибка, что саппорт ответил и всё заработало. только негатив. вам самим не противно?
0
|
|
|
67 / 58 / 1
Регистрация: 01.04.2016
Сообщений: 346
|
||||
| 25.05.2016, 16:57 | ||||
|
Сроки проекта: 01.07.2014 - 01.01.2017 Там же: Замминистра связи: ГИС ЖКХ готова на 80% А цена вопроса тоже есть в интернете, читаем на другом сайте, внизу статьи: Минкомсвязи требует от коммунальщиков перейти на ГИС ЖКХ от «Почты России», угрожая штрафами и дисквалификацией За услуги по ГИС ЖКХ «Ланит» получит 360,7 млн рублей Добавлено через 18 минут например, у меня есть одна из баз РКЦ: 145 услуг 440 тысяч лицевых счетов 12.6 миллионов связок лицевой счет-услуга для 178 контрагентов
1
|
||||
|
476 / 239 / 114
Регистрация: 12.05.2016
Сообщений: 647
|
||
| 25.05.2016, 23:54 | ||
|
Я вот тоже недоумеваю, у меня вот тоже 400 управляшек и 700 тыс. счетов, это около 10 млн записей для начислений каждый месяц. При том, что естественно начисления объединяются в пачки по лицевому счету и принципалу, всё равно выходит, что около миллиона SOAP запросов надо пропихнуть. Я очень надеюсь, что на боевой базе скорость будет выше чем 10-20 секунд на один запрос (как на перспективном). Иначе придется возить данные в Ланит (или кто там будет саппортить эту систему после 1 января 2017) на флэшке. Ибо получается, что заливка данных за один месяц будет занимать три месяца. Еще что поразило - походу механизм загрузки из файлов и веб сервисы делают совершенно разные команды, не связанные друг с другом. Ибо неоднократно натыкались уже, что поля необязательные в SOAP являются обязательными в эксель файлах и наоборот... я как-то более консистентной логики проверок ожидал.
0
|
||
|
0 / 0 / 0
Регистрация: 26.05.2016
Сообщений: 2
|
|
| 26.05.2016, 09:58 | |
|
Ребята, а где можно взять хоть как-то работающий пример?
0
|
|
| 26.05.2016, 09:58 | |
|
.NET 4.x Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (2) Интеграция с ГИС ЖКХ и подпись SOAP без Крипто .NET и stunnel Soap, Java, Гис ЖКХ
Интеграция с ГИС ЖКХ (ГЖ). 400 Bad request Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо
Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
|
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман.
Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
|
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
|
|
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
|
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ
Основная суть и тезисы по измерениям:
0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема.
Объект не может перемещаться в 0D.
1D (Первое измерение):. . .
|
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek
ВВЕДЕНИЕ
Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
|
Модель по догадкам
anaschu 25.08.2026
Прошло две недели. Я уже рассказывал, как разговаривал с сотрудниками у сортировки и как понял, что главная ветка — не про приёмку, а про отбор. Но тогда я думал, что понял механику. На этой неделе я. . .
|