Прием и передача SOAP сообщений с подписью XML сертификатами (X.509). Веб-сервис или HTTP-сервис?

1. wmonref1 02.06.23 11:32 Сейчас в теме
Приветствую!
Есть задача провести интеграцию с сторонним сервисом. Обмен осуществляется по протоколу SOAP. Сервис отправляет нам один SOAP конверт подписанный сертификатом X.509. После обработки сообщения мы должны отправить один SOAP конверт сервису (тоже подписанный сертификатом X.509). Сообщения достаточно простые, имеют 2-3 параметра. Сертификаты были получены и установлены на локальном компьютере (.cer и .pfx)
Подскакжите пожалуйста как лучше реализовать данный обмен? Использовать Веб-сервис или HTTP-сервис?
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. Sashares 34 02.06.23 11:57 Сейчас в теме
(1) Если в header'е у вас будут какие-то данные, в том числе данные подписи, то веб-сервис вам не подойдет.
3. wmonref1 02.06.23 12:25 Сейчас в теме
Да, действительно в header-e есть узел wsse:BinarySecurityToken
Значит только HTTP-сервис?
4. Sashares 34 02.06.23 12:28 Сейчас в теме
(3)Если вам надо его заполнять при отправке сообщения обратно, или нужно читать из него данные из полученного сообщения, то да, только HTTP.
wmonref1; +1 Ответить
5. wmonref1 02.06.23 16:06 Сейчас в теме
(4), Понятноб спасибо!
Теперь другой вопрос: как прочитать подписанный конверт SOAP (тот который получаем) ?
6. Sashares 34 02.06.23 16:31 Сейчас в теме
(5)Разные варианты есть. Чтение XML, ДокументDOM, XDTO.
7. wmonref1 02.06.23 17:01 Сейчас в теме
(6) :) Это понятно, но подскажите как прочитать подписанный конверт используя сертификат установленный на сервере?
8. Sashares 34 02.06.23 22:24 Сейчас в теме
(7)Не очень понятно, какая разница, подписан конверт или нет? Он же просто подписан, а не зашифрован.
Подпись в soap это просто несколько узлов в xml со значениями хеша, подписи, сертификата и может некоторых других данных.
Для чтения сообщения не нужен никакой сертификат.
Сертификат потребуется только если нужно проверить, что подпись валидна.
9. wmonref1 02.06.23 22:54 Сейчас в теме
(8)
Подпись в soap это просто несколько узлов в xml со значениями хеша, подписи, сертификата и может некоторых других данных.

Понятно, спасибо.
Подскажите, пожалуйста, как проверить валидность подписи?
10. Sashares 34 03.06.23 00:29 Сейчас в теме
(9)Если подпись в формате XMLDSIG, то в БСП есть функция ПроверитьПодпись
https://its.1c.ru/db/bsp318doc#content:2159:hdoc
wmonref1; +1 Ответить
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот