Java 使用Apache CXF对SOAP消息进行签名和加密

Java 使用Apache CXF对SOAP消息进行签名和加密,java,web-services,cxf,Java,Web Services,Cxf,我还试图使用ApacheCXF编写一个“安全的HelloWorld”web服务;我应该注意到,我对Java和WS-*有些陌生 基本上,我想做的是一个hello world web服务,其中包含使用x.509证书签名和加密的soap消息 我已经读过了,但是;我想使用WS-SecurityPolicy而不是拦截器 有人能给我指出正确的方向吗?因为web服务是通过HTTP工作的,所以您可以使用HTTPS协议来保护它们 这里有一个资源可以帮助您找到正确的方向: 虽然此资源是用于JAX-WS的,但您应该发

我还试图使用ApacheCXF编写一个“安全的HelloWorld”web服务;我应该注意到,我对Java和WS-*有些陌生

基本上,我想做的是一个hello world web服务,其中包含使用x.509证书签名和加密的soap消息

我已经读过了,但是;我想使用WS-SecurityPolicy而不是拦截器


有人能给我指出正确的方向吗?

因为web服务是通过HTTP工作的,所以您可以使用HTTPS协议来保护它们

这里有一个资源可以帮助您找到正确的方向:

虽然此资源是用于JAX-WS的,但您应该发现,其中有很多将遗留到ApacheCXF


干杯。

这里有一个博客,详细介绍了如何使用Apache CXF:

还有一个配置了使用WS-SecurityPolicy方法的源代码

编辑:修复断开的链接,将链接添加到教程

上的WS-SecurityPolicy的各种设置现在有了一个很好的概述,它引用了上面的链接

简言之(如果链接再次消失),WS-SecurityPolicy的配置与CXF wiki上描述的类似,只是在CXF.xml和CXF-servlet.xml中有一些更改:

cxf.xml

   <jaxws:client name="{http://myport" createdFromAPI="true">
            <!-- You will need to add the corresponding values to a properties file -->
            <jaxws:properties>
                <entry key="ws-security.callback-handler" value="client.ClientKeystorePasswordCallback"/>        
                <entry key="ws-security.encryption.properties" value=keystore.properties"/>
                <entry key="ws-security.signature.properties" value="keystore.properties"/>
                <entry key="ws-security.encryption.username" value="myservicekey"/>
            </jaxws:properties>


不幸的是,提供的链接不再起作用,这使得这个答案不再有用。显然,他们在JRoller站点上做了一些更改,所以URL发生了更改。我确实找到了原始文档,在这样做的过程中,我注意到他们甚至在ApacheCXF站点上包含了更多关于此的文档,并包含了指向我上面引用的教程的链接。
  <jaxws:properties>
            <entry key="ws-security.callback-handler">
                <ref bean="myPasswordCallback"/>
            </entry>
            <entry key="ws-security.encryption.properties" value="serviceKeystore.properties"/>
            <entry key="ws-security.signature.properties" value="serviceKeystore.properties"/>
            <entry key="ws-security.encryption.username" value="useReqSigCert"/>
        </jaxws:properties>