|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
Собственно тема: СМЭВ добавление подписи (/soap:Envelope/soap:Header/wsse:Security) в SOAP пакет в рамках SOAP WEB сервиса (ГИС ГМП). Как вообще добавляется заголовок в SOAP пакет в рамках WEB сервиса? То есть если лапками делать XML,то понятно, но как то неправильно если предоставлен сервис. Но сервис SmevGISGMPService имеет только один метод gisgmpTransferMsg у которого только два параметра message и messageData обёрнутые в Holder и никакого заголовка. Весь маршалинг через JAXB скрыт. С какого бока тут приделывать заголовок пакета не понимаю. В инете все примеры - это именно вручную собирать XML, вставлять туда заголовок с подписью и потом отправлять по HTTP. Неужели по другому никак? Зачем тогда предоставлен сервис SOAP? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 14:01 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnnВ инете все примеры - это именно вручную собирать XML,а тут в форуме? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 14:16 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, Считаете что Гугл не включает в поиск данный форум. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 14:25 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnnPetroNotC Sharp, Считаете что Гугл не включает в поиск данный форум. :)ну если не нашли, как мне считать. Я давал тут пример калькулятора. С апи верхнего уровня. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 14:35 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnnСобственно тема: СМЭВ добавление подписи (/soap:Envelope/soap:Header/wsse:Security) в SOAP пакет в рамках SOAP WEB сервиса (ГИС ГМП). Как вообще добавляется заголовок в SOAP пакет в рамках WEB сервиса? То есть если лапками делать XML,то понятно, но как то неправильно если предоставлен сервис. Но сервис SmevGISGMPService имеет только один метод gisgmpTransferMsg у которого только два параметра message и messageData обёрнутые в Holder и никакого заголовка. Весь маршалинг через JAXB скрыт. С какого бока тут приделывать заголовок пакета не понимаю. В инете все примеры - это именно вручную собирать XML, вставлять туда заголовок с подписью и потом отправлять по HTTP. Неужели по другому никак? Зачем тогда предоставлен сервис SOAP? Если не получается подписать через "стандартный" обработчик, то делаеться написание собственного Inerceptors, который "вживляет" ЭЦП туда куда надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 14:41 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
mad_nazgul, Это как раз то о чём я и пишу. То есть явным образом через JAXB собрать XML пакета без заголовка. Потом, по-сути, вручную вставить заголовок с подписью, переименовать некоторые теги и затем через HTTP всё это послать куда надо. Всё понятно, но геморойно. Хочется просто понять логику разработчиков СМЭВ, как они предлагают это делать. Может у них есть какой то хитромудрый способ? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 14:55 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnn, А ЕСИА у вас часть СМЭВ? Так как у нас вся работа с госуслугами велась чере либу которую рекомеедовали сами госуслуги. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 15:10 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, Нам надо через СМЭВ отправлять на ГИС ГМП информацию о платежах. СМЭВ предоставляет только адрес WSDL и схемы XSD. Всё. В результате генерации объектов имеем кучу объектов в спецификации JAXB, и собственно сервис с единственным методом. Как вызывается метод я уже писал в первом посте. Принцип формирования подписи описан. Он достаточно хитровымудренный, но понятный. Подпись должна записываться в заголовок SOAP пакета. Вот собственно второй день бьюсь пытаюсь понять как. То есть если руками формировать весь пакет то понятно как, но зачем тогда сам сервис делать? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 15:35 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnn, Думаю значит так коряво api сделано на той стороне. Вы нипричем. Халявщики они. Нам было проще с госуслугами. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 15:40 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, Задолбала эта постоянная борьба с государственными IT сервисами.... ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 15:58 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnngisgmpTransferMsg у которого только два параметра message и messageData обёрнутые в Holder и никакого заголовка т.е. один метод в зависимости от message делает кучу дел? sergnnС какого бока тут приделывать заголовок пакета не понимаю обычно, как уже написали, через interceptor. sergnnно зачем тогда сам сервис делать? возможно изначально они хотели сделать хорошо. т.е. много разных методов, авторизация через хедеры. может еще и сделают. я так понял, что тебе хотелось бы, чтобы объект для аутентификации был частью метода? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 15:59 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
chpashaт.е. один метод в зависимости от message делает кучу дел? Да. Только message там универсальный, а вот messageData может быть самым разным. Это, типа универсальный способ обмена информацией между разными государственными и муниципальными организациями. Организация определённым образом регистрирует на СМЭВ свой формат данных messageData и можно, вроде как пользоваться. chpashaвозможно изначально они хотели сделать хорошо. т.е. много разных методов, авторизация через хедеры. может еще и сделают. я так понял, что тебе хотелось бы, чтобы объект для аутентификации был частью метода? Вот это всё и приводит в уныние. Вроде как есть предоставленный унифицированный SOAP метод, а приходится лопатить на уровне HTTP запросов и парсить XML. Бред какой то. Или всё таки есть какой то жутко секретный способ.... Что самое интересное объекты для создания самой подписи есть. Но как их вставить в пакет непонятно. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 16:11 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnn, Ну им проще написать один метод. Вот и сделали. Пишите в тех поддержку. Вы же официалы. Нам все разжевали и ссылки дали. Удачи! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 16:14 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
chpasha, Я тут параллельно бросил клич на bankir.ru. Там есть техническая ветка и СМЭВ там обсуждается довольно активно, но за полдня просмотров куча, ответов ноль. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 16:17 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
PetroNotC Sharp, Ну да, так наверно и придётся. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 16:19 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnnВроде как есть предоставленный унифицированный SOAP метод, а приходится лопатить на уровне HTTP запросов и парсить XML ну чисто архитектурно - это правильно, что данные для аутентификации отделены от payload - это позволяет делегировать проверку другому классу/сущности. представь, что методов 30 и в каждом по объекту Auth. Возможно по-этому. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 16:25 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
chpashasergnnВроде как есть предоставленный унифицированный SOAP метод, а приходится лопатить на уровне HTTP запросов и парсить XML ну чисто архитектурно - это правильно, что данные для аутентификации отделены от payload - это позволяет делегировать проверку другому классу/сущности. представь, что методов 30 и в каждом по объекту Auth. Возможно по-этому.а про SOLID почему не упомянул? Понятно теперь кто строит такое API SendMessage(pointer) ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 16:33 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
chpasha, архитектурно оно понятно, но в данном случае предоставленный метод получает заполненные объекты, делает из них XML и сразу передаёт на сервер в SOAP пакете. В какой момент ему подсунуть заголовок с подписью? ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 16:34 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
PetroNotC Sharpа про SOLID почему не упомянул? это и есть SOLID PetroNotC SharpSendMessage(pointer) Цветочный магазин sergnnВ какой момент ему подсунуть заголовок с подписью? видимо зависит от библиотеки, которую юзаешь. в spring-ws это уже упомянутый тут interceptor. он выстреливает после того, как Soap сформировано, до отправки. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 17:04 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
Для второго смэва добрый человек один сделал таким образом - вполне работающий вариант. Для третьего смэва скорее всего алгоритмы надо будет подркучивать нужные - не проверял это. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 17:18 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
chpashaЦветочный магазина я думал, по чему тебя нет в той теме). Понятно. Там щеки не принято надувать. Продолжай.скажешь Цветочный магазин 1456 раз. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.09.2019, 17:59 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnnmad_nazgul, Это как раз то о чём я и пишу. То есть явным образом через JAXB собрать XML пакета без заголовка. Потом, по-сути, вручную вставить заголовок с подписью, переименовать некоторые теги и затем через HTTP всё это послать куда надо. Всё понятно, но геморойно. Хочется просто понять логику разработчиков СМЭВ, как они предлагают это делать. Может у них есть какой то хитромудрый способ? Я работал не со СМЭВ, а с нашей гос. ESB. Если для RSA, можно было просто подсунуть ЭЦП и она правильно подписывала XML, через стандартный клиент. То с ГОСТом пришлось самому писать Interceptor, который внедрял ЭЦП. Посмотрите, если у вас используется стандартный RSA, то возможно ничего делать не надо будет. Через стандартный клиент все заработает. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2019, 05:41 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
SpringManДля второго смэва добрый человек один сделал таким образом - вполне работающий вариант. Для третьего смэва скорее всего алгоритмы надо будет подркучивать нужные - не проверял это. Спасибо. Теперь я понял всю глубину задницы в которую попал.... ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2019, 09:23 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
sergnnглубину задницыотпишись что скажет техподдержка ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2019, 10:28 |
|
Кто нибудь делал обмен сообщениями со СМЭВ?
|
|||
---|---|---|---|
#18+
PetroNotC Sharpотпишись что скажет техподдержкаТам не будет ничего простого: читать доки, работать с XML, крипто-API выбранного СКЗИ и всё-такое, что не укладывается в пару строчек, но при этом - почти никому не требуется. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.10.2019, 13:48 |
|
|
start [/forum/topic.php?fid=59&msg=39869658&tid=2121087]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 14ms |
total: | 160ms |
0 / 0 |