使用Apache CXF签名和加密SOAP消息

我正在尝试使用Apache CXF编写“安全Hello World”Web服务; 我应该注意到我对Java和WS- *的新东西有些新意。

基本上,我想要做的是一个hello-world Web服务, 使用x.509证书对来自此Web服务的SOAP消息进行签名和加密

我已经在Apache CXF网站上阅读了关于WS-Security的教程但是; 我想使用WS-SecurityPolicy而不是拦截器。

谁能指出我正确的方向?

这是一篇博客,详细介绍了如何使用Apache CXF: 向Apache CXF SOAP调用添加X.509安全头(WS-SecurityPolicy方法)

还有一个教程,其中包含使用WS-SecurityPolicy方法配置的源代码。

编辑:修复了断开的链接,添加了教程链接。

现在可以很好地概述CXF站点上WS-SecurityPolicy的各种设置,并引用上面的链接。

简而言之(如果链接再次被吹走),WS-SecurityPolicy的配置类似于CXF wiki上描述的CXF拦截器方法 ,除了cxf.xml和cxf-servlet.xml中的一些更改:

cxf.xml

        

CXF-servlet.xml中

          

由于Web服务通过HTTP工作,因此您可以使用HTTPS协议来保护它们。

这是一个可以帮助您指明正确方向的资源: 使用基于JAX-WS的Web服务和SSL

虽然这个资源是针对JAX-WS的,但您应该会发现很多资源都会延续到Apache CXF。

干杯。