Ws-security java客户端,需要在Username令牌中发送空密码

时间:2017-11-24 03:38:33

标签: java web-services axis2 ws-security rampart

我有一个java客户端,它使用axis2和rampart发送带有ws-security信封的soa消息。由于这是Identity Manager连接器的一部分,因此我需要以编程方式完成所有操作,无法获得配置文件。

我正在连接的网络服务,只检查用户,但密码必须发送空白(这不是我的限制,我不能让他们改变它。)

我有一个回调处理程序,只接受一个字符串并将其作为密码返回。如果传递密码,这工作正常。但是如果我传递一个空字符串“”,我会得到一个带有消息的异常:

org.apache.axis2.AxisFault:用户的回调处理程序没有提供密码:“”

在ws-security标头中,我需要提供类似这样的内容:

       
      为myuser               

如果Option对象中有一些属性,或者某些策略我可以修改为让axis2允许空字符串作为密码?

我尝试使用UsernameToken对象的setNoPassword(true)方法,这允许这种情况发生,但是删除了整个密码标记,即标题是:

                为myuser

但是当实现这个WS时,我需要以空的形式发送密码令牌。

提前致谢。

0 个答案:

没有答案