论文部分内容阅读
面向服务的体系架构(Service Oriented Architecture, SOA)作为近年来IT业界的焦点,已经逐渐成为影响中国IT系统构建的主导思想。Web Service通过一系列的标准技术,已成为企业实现SOA的首选,它实现了真正意义上的平台无关性和语言独立性。随着Web Service的广泛应用,其安全交互也变得越来越难以实现,因此,针对Web Service安全和互操作,制定了相关规范并不断进行更新。由于Web Service安全规范涉及到消息的认证机制、机密性和完整性等方面,且可选择的余地很大,因此不同应用服务器提供的对Web Service安全机制的支持也不尽相同。于是,如何让运行在不同应用服务器环境中的程序进行安全交互成了一大难题。SOA虽然解决了异构平台下Web服务的相互调用,且不同平台间的安全信息交换也有相应安全标准(WS-Security),但是异构环境下各Web服务平台对WS-Security规范的支持存在不统一的地方,且各平台在WS-Security规范的实现上也存在着一些差异。例如WCF使用.pfx和.cer格式的证书,WAS将证书以.jks格式存放在Java密钥仓库(JKS)中;而且在安全策略的形式上也存在不同,WCF的策略配置放在.exe.config文件中,而WebSphere则放在policy.xml及policySet.xml中。针对以上异构平台下Web服务的安全问题,本文从SOAP消息的安全性角度出发,探讨了异构平台环境下Web服务交互的安全机制和策略。以.NET和WebSphere平台为基础研究了异构平台间Web服务的安全交互,提出了基于这两个平台的安全处理模型,该模型在平台网关处建立了密钥转换模块和安全策略集成模块,实现了两个平台间不同格式密钥的相互识别以及安全策略的集成。通过建立一个异构平台下三方安全交互的应用场景,完成了对异构平台间SOAP消息的签名、加密及验证,保证了SOAP消息的安全性,验证了该模型的可行性,实现了异构平台间Web服务的安全交互。