ws接口的安全问题
1 接口调用者身份验证问题
Rsa:私钥加密,公钥解密
Cxf:usernameToken
1 在请求中加入wsse的安全协议 2 在wsse中用安全令牌(用户名/密码)来验证用户的身份 3 cxf在发送和接受ws的soap请求时,在框架中加入回掉函数来处理安全令牌的校验 4 如何安全令牌信息放入请求信息中,和服务器上如何在调用方法时拦截并且校验请求这的身份信息 |
Cxf:安全令牌拦截器
1) 在cxf发布的接口中服务中,加入安全拦截器(在spring配置文件中发布的服务中加入拦截器)实例代码如下:
<!-- 自定义一个回调函数来处理安全令牌的校验这个类要继承CallbackHandler类 -->
<bean id="myPasswordCallBack" class="com.util.MyPasswordCallBack"></bean>
<!-- 例如在发布的UserService的服务接口中添加拦截器WSS4JInInterceptor然后进行构造注入在map中依次放入安全令牌,用户密码,以及回调函数,注意这三个属性要在ConfigurationConstants常量类中去赋值避免写错 -->
<jaxws:endpoint address="/user" implementorClass="com.service.UserService">
<jaxws:inInterceptors>
<bean class="org.apache.cxf.ws.security.wss4j.WSS4JInInterceptor">
<constructor-arg>
<map>
<entry key="action"