使用基于 Java 的集成引擎(Mirth,出于好奇),我需要对通过引擎传递的 SOAP 有效负载进行签名。我所拥有的只是未签名的原始 SOAP XML 以及安装扩展和调用 Java API 的能力。到目前为止,我的谷歌搜索还没有发现任何 API/框架可以有效地让我有效地设置 WS-Security 参数,然后将原始负载传递给它进行签名。如果需要,安装提供此功能的 3rd 方 jar 不是问题。我查看了 Apache-CXF 和 JAX-WS,但据我所知,它们使用的是存根 Java 类,而不是原始负载。我是否遗漏了一些明显的东西,或者我将不得不编写自定义 WS-Security 实现?
1 回答
白衣非少年
TA贡献1155条经验 获得超0个赞
WSS4J库支持对任何用 DOM 或 STAX API(SOAP 消息与否)解析的 XML 进行签名。您可以在单元测试的源代码中找到示例(用于 DOM API 的文件夹 ws-security-dom 和用于 StaX API 的 ws-security-stax)。
例如,如果您使用 DOM API,CertificateStoreTest#testSignatureDirectReference()的代码显示了如何对 SOAPPart 进行签名,SOAPPart 是解析为 DOM 文档的 SOAP 有效负载。
添加回答
举报
0/150
提交
取消