我正在寻找一种方法来为我的肥皂请求添加安全标头。
我找到了拦截器,它将解决我的问题: UsernameTokenInterceptor 有人可以建议我如何用我的参数(密码,用户名)创建这个bean并正确地将其插入我的jaxws客户端
<jaxws:client id="***" name="***" endpointName="***" serviceName="***" address="***" serviceClass="***" xmlns:tns="***">
<jaxws:outInterceptors>
<ref bean="myInterceptor" />
</jaxws:outInterceptors>
答案 0 :(得分:2)
UsernameTokenInterceptor是一个策略感知拦截器,如果您的WSDL具有与sp:UsernameToken匹配的安全策略(没有其他安全绑定),则会自动创建。如果是这样,则使用不同的拦截器.UsernameTokenInterceptor只是为了插入UsernameToken)。因此,您只需将用户名+密码指定为JAX-WS属性即可。
如果您没有安全策略,那么您希望使用WSS4JOutInterceptor,在出站安全标头中手动插入UsernameToken。
有关将触发UsernameTokenInterceptor的策略示例,请参阅名为&#34; DoubleItPlaintextPolicy&#34;的策略。这里:
如果您想使用手动方法,CXF文档中有一个示例: