Web服务中SOA消息安全传递探究.doc

Web服务中SOA消息安全传递探究.doc

ID:50427592

大小:72.00 KB

页数:5页

时间:2020-03-09

Web服务中SOA消息安全传递探究.doc_第1页
Web服务中SOA消息安全传递探究.doc_第2页
Web服务中SOA消息安全传递探究.doc_第3页
Web服务中SOA消息安全传递探究.doc_第4页
Web服务中SOA消息安全传递探究.doc_第5页
资源描述:

《Web服务中SOA消息安全传递探究.doc》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、Web服务中SOA消息安全传递探究【摘要】本文利用ApacheAxis完成Web服务的SOAPEngine功能,并结合第三方安全包,签名和加密SOAP消息体内封装的XML文档,实现了SOAP消息的机密性和完【关键词】SOAP;XML签名;XML加密SOAP以XML形式存在并被封装在HTTP等TCP/IP应用层协议中,是WebService组件间的标准通信协议。WSS4J是一个签名和验证SOAP消息的Java库符合W3C有关XML签名和XML加密的规范。WSS4J利用ApacheAxis作为SOAPEngine,以ApacheXML-Security为XML安全引擎。本文利用ApacheAxis

2、和WSS4J提供的Web安全服务框架,对Web服务中SOAP消息的安全传递作了研究。1•在AxisWeb服务中使用WSS4JAxis采用管道过滤器模式处理请求流和响应流,Axis中的过滤器就是handler,根据具体的处理任务按调用的顺序它们被组织在请求/响应流中。通过handler可在处理链(handlerchain)中卸载与嵌入第三方功能模块来实现系统功能的扩展和模块化。WSDoAIISender和WSDoAIIReceiver是用于WSS4J的Axishandler,它们都是org.apache.axis.handlers.BasicHandler的扩展类,前者用于XML消息的加密、签名

3、,后者用于XML消息的解密、验证,可以使用这些安全handler截获进岀客户/服务器的SOAP消息并进行安全处理,如图1所示。我们可采用Axishandler的标准配置方式,通过Axis的Web服务部署描述符文件(WSDD)中包含必要的信息来控制安全过程,完成安全SOAP消息的创建和使用。AxisWeb服务在客户端为用户构造Webservices请求,接收应答并返回给用户;在服务器端接收请求,用收到的SOAP消息中的数据调用相应的服务并返回应答。客户端应用程序通过调用Axis提供的API来调用目标服务。Axis在收到请求后将调用WSDoAIISenderhandler进行安全处理,最后经特定于

4、传输的handler将消息发送出去。其中,Axis解析部署描述符文件并将相关参数和相应的值提供给WSS4Jhandler,安全handler解释参数值并调用WSS4J模块来处理SOAP消,而WSS4J则使用ApacheXML-Security项目提供的XML签名和XML加密机制来完成XML消息签名加密。2基于UsernameToken令牌的用户认证为了实现用户身份认证,需将令牌UsernameToken插入到SOAP请求中,它包含一个明文形式的用户名和相应的口令。作为敏感信息的口令一般不以明文形式存储。为了得到相应的口令,WSS4Jhandler使用了类似JAAS机制(Java验证和授权服务)

5、的passwordcallback技术,如图2所示。部署描述符文件中的passwordcallbackClass参数包含callback类的类名,这个类必须实现CallbackHandler接口。WSS4Jhandler得到这个类,实例化,当需要口令时则调用该类的handle方法来获得。客户端的部署描述符文件client-side.wsdd:服务器端的部署描述符文件server-side.wsdd:客户和服务器都需要一个Callback类的CallbackHandler用以确认用户验证的有效性,当用户名/口令无效时则抛出异常。3•签名加密XML消息可通过配置客户和服务器端的WSDD文件(如下所

6、示)实现XML消息签名加密,参数encryptionParts取值为Element时是对元素加密,为Content时是对元素内容加密,该参数缺省时表明对整个XML消息体加密。同时还需要创建keystore文件,签名和加密时可使用同一^keystore属性文件。参数signaturePropFile和decryptionPropFile指明所用的keystore文件名,分别用于客户/服务器进行签名、加密和解密。我们通过签名和加密第2节的用于身份认证的XML元素UsernameToken,完成SOAP消息签名加密的功能,并可利用SOAPMonitor工具捕获签名加密后的SOAP客户端的部署描述符文

7、件client-side.wsdd:服务器端的部署描述符文件server-side.wsdd:4•结论AxisWeb服务屏蔽了底层技术细节,利用它提供的handler便于将用户加密认证模块插入到请求/响应处理链中,通过对填充装于SOAP消息中的XML文档进行加密认证,实现了SOAP的机密性和完整性。如果进一步提高SOAP消息中XML签名加密的粒度,则可更好地确保Web服务通信安全。作者简介:李勇(

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。