Использовать gSOAP для доступа VS 2003 / C ++ к SOAP Web Service с WS-Security? - PullRequest
0 голосов
/ 07 октября 2009

У нас есть предстоящий проект, который позволит старой платформе, расширяемой только в C ++ / VS 2003, вызывать веб-сервис на основе SOAP, использующий WS-Security.

Мое исследование Google показывает, что gSOAP может быть лучшим способом.

Я ищу проверки и / или альтернативные предложения.

1 Ответ

1 голос
/ 13 декабря 2009

Я использую gSoap с плагином wsse для WS-Security, используя подписи как на стороне клиента, так и на стороне сервера для Windows и Linux. Это заняло некоторое время, но это работает хорошо. Это тоже очень быстро.

Потребуется связать OpenSSL с вашим проектом. На самом деле я обнаружил ошибку в плагине wsse в нескольких выпусках назад, которая заключалась в прямых вызовах OpenSSL для генерации и проверки подписи. Все ошибки связаны с утечкой структур OpenSSL. (Исправления были приняты в исходное дерево и являются частью текущего выпуска.)

В целом, это действительно было не так уж и сложно. Я использовал SoapUI (http://www.soapui.org/) для устранения неполадок генерации подписи при попытке проверить, что я делаю что-то не так или на удаленном конце возникают проблемы.

Если вы выполняете WS-Security на стороне сервера под Apache2, вам придется придерживаться mod_gsoap 0.6, который поставляется с gSoap. Мне пришлось немного изменить его, потому что он не будет работать с WS-Security по умолчанию.

Я верю, но не проводил много исследований, что кто-то сломал mod_gsoap 0.7, который является текущей версией, доступной на SourceForge. Мне потребовалось некоторое время, чтобы понять, что 0,7 был segfaulting apache2, так что, возможно, это избавит вас от некоторой боли.

...