|
1 / 1 / 0
Регистрация: 16.12.2015
Сообщений: 1
|
||||||||||||||||
.NET 4.x Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ16.12.2015, 11:46. Показов 177843. Ответов 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) |
|
3 / 3 / 0
Регистрация: 28.09.2011
Сообщений: 9
|
||||||
| 09.03.2016, 07:24 | ||||||
|
Случайно никто не знает как установить SOAPAction в заголовок запроса в Java? У меня сейчас так:
Invalid operation type for soap action. Operation type is EXPORT_ORG_REGISTRY and soap action is "",ns:exportOrgRegistry Сам запрос правильный, в SoapUI успешно выполняется, текст SOAPAction взял из проекта в SoapUI
0
|
||||||
|
4 / 4 / 0
Регистрация: 17.02.2016
Сообщений: 13
|
|||||||||||
| 09.03.2016, 08:48 | |||||||||||
|
Да вроде делаю
А в ответ :
Что-то не так делаю. Но вот что...
0
|
|||||||||||
|
13 / 13 / 0
Регистрация: 25.01.2016
Сообщений: 38
|
|
| 09.03.2016, 09:12 | |
|
URL не тот:
http://127.0.0.1:8080/ext-bus-... /NsiCommon
1
|
|
|
3 / 3 / 0
Регистрация: 28.09.2011
Сообщений: 9
|
|
| 09.03.2016, 09:13 | |
|
Spun80, правильный текущий эндпоинт http://127.0.0.1:8080/ext-bus-... /NsiCommon
Список всех текущих можно посмотреть в файлике Методические рекомендации по работе с СИТ v.8.6.0.4.docx
1
|
|
|
4 / 4 / 0
Регистрация: 17.02.2016
Сообщений: 13
|
|
| 09.03.2016, 10:11 | |
|
Сейчас залез на гис жкх. Там версия апи 8.6.0.4. Но она отличается от того, что я скачал 2016 02 03. Хотя бы в файле Методические рекомендации по работе с СИТ v.8.6.0.4.doc в Сервис обмена сведениями о поставщиках информации теперь https://54.76.42.99:60045/ext-... stryCommon. Получается теперь каждый день надо качать и схемы и доки. ВСЕ, в общем. Нет предела моему расстройству. Я испытываю определенное душевное смятение, как старый японец летящий вниз с вершины Фудзиямы.
Добавлено через 40 минут Araney, zevs151, Спасибо за оперативность! Не ожидал такого от ланита. Добавлено через 29 секунд Такого подвоха, я имею ввиду.
0
|
|
|
10 / 10 / 0
Регистрация: 29.02.2016
Сообщений: 45
|
|
| 09.03.2016, 10:17 | |
|
Какой способ "подключения" wsdl файлов вы выбрали и почему?(ServiceReference, WebServiceReference, wsdl.exe, svcutil.exe, XXsd2Code.exe, и т.д.)
Я так понимаю, они далеко не все дают доступ к xml чтобы его подписать с помощью xades-bes. В общем, нашел кто-нибудь оптимальный вариант?
0
|
|
|
0 / 0 / 0
Регистрация: 10.12.2015
Сообщений: 18
|
|
| 09.03.2016, 15:49 | |
|
Ребят, вопрос не совсем по теме, но все таки.
Как получить сертификат (не тестовый) для установления защищенного соединения и не ошибиться с ним? (для работы с гис жкх) Сертификат должен быть выдан аккредитованным УЦ. Список аккредитованных УЦ распостраняется через портал http://e-trust.gosuslugi.ru/ . В моем городе есть только один УЦ, и это Песионный Фонд РФ. На вышеуказанном сайте в описании моего УЦ в поле Средства УЦ указано ViPNet КС2. Будет ли выданный ими сертификат работать с криптопро? Как выданные сертификаты зависят от криптопровайдеров? В каком формате выдаются сертификаты? Кто имел с ними дело, поделитесь опытом пожалуйста.
0
|
|
|
10 / 10 / 0
Регистрация: 29.02.2016
Сообщений: 45
|
|
| 09.03.2016, 16:21 | |
|
lonely_tramp, Методические рекомендации по работе с СИТ***.doc пункт "2 Требования к транспортному сертификату."
0
|
|
|
0 / 0 / 0
Регистрация: 10.12.2015
Сообщений: 18
|
|
| 09.03.2016, 16:24 | |
|
ndbn, вы внимательно прочли мой пост? Речь идет о процедуре получения НЕ тестового сертификата.
0
|
|
|
10 / 10 / 0
Регистрация: 29.02.2016
Сообщений: 45
|
|
| 09.03.2016, 16:38 | |
|
lonely_tramp, кто вас обязывает на тесте пользоваться тестовым сертификатом?! Это просто допущение, там описаны требования.
Нормальные сертификаты выдаются на флешке(токене) и, согласно зак-ву, из рук в руки, т.е. при личном обращении и, вот в этом не уверен, возможно из токена не экспортируются закрытый ключ в виде файла, но возможно перенести сертификата в другой контейнер(хранилище windows например). О совместимости читайте faq на сайте, хотя и не понятно что вы имеете ввиду под "работать с криптопро".
0
|
|
|
0 / 0 / 0
Регистрация: 10.12.2015
Сообщений: 18
|
|
| 09.03.2016, 16:48 | |
|
ndbn, никто не обязывает. Но менять сертификаты раз в месяц (тестовый криптропрошный сертификат дается 2 месяца минус время ответа ТП ~ 3 недели) нет желания, а так же нагружать данными заявками и без того черепашью ТП ГИС ЖКХ.
Нормальный сертификат получать придется все равно, так что было принято решение получить его на данном этапе. Например, у этого УЦ в поле Средства УЦ указано ViPNet КС2 а не КриптоПро (как у множества других УЦ), что ввело меня в замешательство. Раньше дел с сертификатами не имел. Собственно по-этому и решил спросить.
0
|
|
|
10 / 10 / 0
Регистрация: 29.02.2016
Сообщений: 45
|
|||||
| 09.03.2016, 16:59 | |||||
|
В ГИС вы отдадите открытую часть сертификата, чтобы они проверяли то что вы им отправляете, но локально ваш софт должен работать с локальным криптопровайдером(если нужно с ним работать, конечно).
0
|
|||||
|
0 / 0 / 0
Регистрация: 10.12.2015
Сообщений: 18
|
|
| 09.03.2016, 17:22 | |
|
ndbn, не знаю что "не то" я получил, но гис жкх с ним работал. Оказалось 3 месяца а не 2. см. аттач.
0
|
|
|
10 / 10 / 0
Регистрация: 29.02.2016
Сообщений: 45
|
|
| 09.03.2016, 17:38 | |
|
0
|
|
|
13 / 13 / 0
Регистрация: 25.01.2016
Сообщений: 38
|
||
| 10.03.2016, 07:04 | ||
|
0
|
||
|
0 / 0 / 0
Регистрация: 04.03.2016
Сообщений: 2
|
|
| 11.03.2016, 14:30 | |
|
Привет всем. Подписывать научился. Использую, как и многие здесь библиотеку "XAdES Starter Kit for Microsoft .NET 3.5 (and above) 2010 Microsoft France". За основу брал этот https://github.com/springjazzy проект.
Сейчас встал вопрос проверки подписи. Пытаюсь вызвать XadesSignedXml.CheckSignature(). Получаю всегда false. Но при этом ГИС принимает этот пакет и корректно отвечает на него, т.е. подпись 100% корректная в запросе. Кто как проверяет подпись, если конечно кто-нибудь вообще ее проверяет? И вообще в этой ветке никто ни разу не упомянул о проверке подписи. Проверяет ли кто-нибудь подпись в ответах от ГИС?
0
|
|
|
2 / 1 / 0
Регистрация: 11.03.2016
Сообщений: 7
|
|
| 11.03.2016, 15:33 | |
|
Всё просто - я не делал эту функциональность. Мне была не нужна.
0
|
|
|
0 / 0 / 0
Регистрация: 04.03.2016
Сообщений: 2
|
|
| 11.03.2016, 19:19 | |
|
springjazzy, спасибо, ваш проект полезный и очень помог сэкономить время.
Но тема ветки "Интеграция с ГИС ЖКХ. Подпись SOAP ...". Поэтому логично не только подписывать свой запрос, но и проверять подпись в ответе. Нашел вот такое http://cpdn.cryptopro.ru/conte... ovider.htm, планирую порыть в эту сторону, на первый взгляд это именно то, что нужно.
0
|
|
|
2 / 1 / 0
Регистрация: 11.03.2016
Сообщений: 7
|
|
| 11.03.2016, 21:58 | |
|
Ok. Только в ГИС каноникализация хитрая - мне пришлось ее переделывать. В XAdES изначальном по другому было сделано. Можете посмотреть историю моих коммитов - особенно метод GetC14NDigest.
Кстати, кто-нить едет в белокаменную 16 марта на конференцию по ГИС? Можно было бы пообщаться, узнать как у кого дела идут.
0
|
|
|
10 / 10 / 0
Регистрация: 29.02.2016
Сообщений: 45
|
|
| 11.03.2016, 23:02 | |
|
0
|
|
| 11.03.2016, 23:02 | |
|
.NET 4.x Интеграция с ГИС ЖКХ. Подпись SOAP и защита канала по ГОСТ (2) Интеграция с ГИС ЖКХ и подпись SOAP без Крипто .NET и stunnel Soap, Java, Гис ЖКХ
Интеграция с ГИС ЖКХ (ГЖ). 400 Bad request Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Nekobox - outbounds[0].transport: unknown transport type: raw
damix 01.10.2026
Фикс ошибки
Правым кликом по серверу -> отладочная информация -> edit
Заменить "net": "raw", на "net": "tcp",
Нажать кнопку reload.
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F
Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU.
Опрашиваются регистры. . .
|
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка:
Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
|