猿问

将 WS-Security 应用于原始 SOAP 负载

使用基于 Java 的集成引擎(Mirth,出于好奇),我需要对通过引擎传递的 SOAP 有效负载进行签名。我所拥有的只是未签名的原始 SOAP XML 以及安装扩展和调用 Java API 的能力。

到目前为止,我的谷歌搜索还没有发现任何 API/框架可以有效地让我有效地设置 WS-Security 参数,然后将原始负载传递给它进行签名。如果需要,安装提供此功能的 3rd 方 jar 不是问题。我查看了 Apache-CXF 和 JAX-WS,但据我所知,它们使用的是存根 Java 类,而不是原始负载。

我是否遗漏了一些明显的东西,或者我将不得不编写自定义 WS-Security 实现?


杨魅力
浏览 107回答 1
1回答

白衣非少年

WSS4J库支持对任何用 DOM 或 STAX API(SOAP 消息与否)解析的 XML 进行签名。您可以在单元测试的源代码中找到示例(用于 DOM API 的文件夹 ws-security-dom 和用于 StaX API 的 ws-security-stax)。例如,如果您使用 DOM API,CertificateStoreTest#testSignatureDirectReference()的代码显示了如何对 SOAPPart 进行签名,SOAPPart 是解析为 DOM 文档的 SOAP 有效负载。
随时随地看视频慕课网APP

相关分类

Java
我要回答