异构平台下Web服务的安全交互研究
VIP免费
摘要
Web 服务的兴起极大地促进了分布式系统及异构系统跨平台的集成,它作
为一种分布式计算模型,以服务的形式封装应用并对外发布。Web 服务基于一
系列开放的标准技术,具有松散耦合、语言中立、平台无关、互操作性的优点。越
来越多的分布式应用采用 Web 服务作为其实现的技术基础。对于 Web 服务以及
分布式系统的应用,提供强有力的安全保证至关重要。
OASIS 组织 2002 年发布了 Web Service Security[1](WS-Security)。WSS 协
议的产生解决了以下三个安全问题:用户令牌的传递、SOAP 消息的完整性 、
SOAP 消息的保密性。WS-Security 定义了向 SOAP 中添加安全性的基本技术,
其宏伟目标是为 SOAP 消息提供端对端的消息级别的安全。
WS-Security 规范的提出基本解决了 Web 服务的安全问题,但是由于异构环
境下各 Web 服务平台对 WS-Security 规范的支持不是完全统一的,并且各个平
台在 WS-Security 规范的实现上存在下面差异:认证方式、完整性和保密性、版
本问题、证书格式、对 WS-Security 规范的支持方式等。
由于 Web 服务的各个平台对 WS-Security 规范的支持不统一,这就为异构平
台Web 服务的安全交互带来了问题。针对这一问题,本文分别研究了.NET 和
Axis2 Web 服务平台对 WS-Security 规范的支持,然后屏蔽其差异的地方,建立
了一个针对这两个平台间 Web 服务安全交互的模型,最后通过实验证明了该模
型的可行性,给出了一个简易的异构环境下 Web 服务安全交互的解决方案。
关键词:Web 服务 异构平台 WS-Security Axis2
ABSTRACT
Web Services have greatly promoted the system integration of distributed and
heterogeneous cross-platform applications, they serve as a distributed computing
model to package and release applications. Web Services based on a series of open
standard technology, with loosely coupled, language-neutral, platform-independent,
interoperability advantages. A growing number of distributed applications use Web
Services as part of their technology infrastructure. It is essential to provide strong
security guarantee for Web Services, as well as the application of distributed systems.
In 2002 , OASIS organization released a Web Service Security (WS-Security,
WSS in short). Three security problems have been solved with the specifications of
WSS: Identity Authentication, SOAP messages integrity, SOAP message
confidentiality. WS-Security defines a basic approach on how to add safety to SOAP
message. Its ambitious goal is to provide end-to-end SOAP message level security.
WS-Security specification basically solved the Web services security issues, but
due to a heterogeneous environment of the Web Services platform, the technologies
which support the WS-Security specification are different. Although these platforms
followed the same WS-Security specification, there are some differences in:
authentication, integrity and confidentiality, version, the certificate format, security
pattern.
Since the differences among heterogeneous platform for Web Services security,
there exist interoperatability problems for secure Web Service. To solve this problem,
this paper studied the WS-Security support on . NET and Axis2 Web services
platform, and then screened their differences. A Web Services security model was
presented, which can secure the web services deployed on these two platforms. And
finally, the feasibility of the model was proved through experiments,and a simple
Web Services security solutions on heterogeneous environment was established.
Key Words:Web Service, Heterogeneous platform, WS-Security ,
Axis2
目 录
摘要
ABSTRACT
第一章 绪 论........................................................................................................1
§1.1 课题研究的目的和意义........................................................................1
§1.2 国内外研究现状....................................................................................2
§1.3 论文主要工作........................................................................................3
§1.4 论文结构安排........................................................................................4
第二章 Web服务技术及平台..............................................................................6
§2.1 Web服务简介........................................................................................6
§2.2 Web服务的规范....................................................................................7
§2.3 Web服务的关键技术............................................................................7
§2.3.1 XML技术....................................................................................8
§2.3.2 SOAP规范...................................................................................9
§2.3.3 WSDL规范...............................................................................12
§2.3.4 UDDI.........................................................................................13
§2.4 Web服务开发平台..............................................................................14
§2.4.1 Axis2 Web服务平台.................................................................14
§2.4.2 .NET Web服务平台.................................................................16
第三章 Web服务安全规范和安全模型.............................................................18
§3.1安全问题分析.......................................................................................18
§3.2 WS-Security规范.................................................................................18
§3.2.1 WS-Security规范组成..............................................................18
§3.2.2 WS-Security规范介绍..............................................................19
§3.3 Web服务安全模型..............................................................................23
§3.4 .NET Web服务安全模型....................................................................24
§3.4.1 WSE简介..................................................................................24
§3.4.2 WSE策略框架..........................................................................25
§3.4.3 WSE安全断言..........................................................................26
§3.5 Axis2 Web服务安全模型....................................................................27
§3.5.1 Rampart结构.............................................................................27
§3.5.2 加载Rampart.............................................................................28
第四章 异构平台Web服务安全交互模型.........................................................31
§4.1 异构平台安全机制的异同..................................................................31
§4.1.1安全令牌以及证书格式差异....................................................31
§4.1.2安全策略差异............................................................................32
§4.1.3 WS-Security版本以及对其支持方式差异..............................32
§4.2 异构平台下Web服务安全交互模型..................................................33
第五章 异构平台Web服务安全交互的实现.....................................................38
§5.1 安全交互场景设计..............................................................................38
§5.2 双方的证书和密钥..............................................................................39
§5.2.1 证书和密钥的生成...................................................................39
§5.2.2 证书的导入...............................................................................42
§5.3 创建、部署、发布Axis2 Web服务....................................................42
§5.3.1 创建Axis2 Web服务.................................................................43
§5.3.2 编写密码回调类PWCBHandler...............................................43
§5.3.3 编写service.xml........................................................................44
§5.3.4 部署、发布Web服务...............................................................44
§5.4 创建.NET客户端并访问axis2 Web服务............................................45
§5.4.1 客户端界面设计.......................................................................45
§5.4.2 使用WSE配置安全策略..........................................................46
§5.5 截获SOAP消息....................................................................................50
§5.6 安全交互的SOAP分析........................................................................50
第六章 总结与展望.............................................................................................54
§6.1 总结......................................................................................................54
§6.2 工作展望..............................................................................................54
参考文献..............................................................................................................55
参考文献
第一章 绪 论
§1.1 课题研究的目的和意义
由于 Web 服务往往包含了企业关键业务,若其安全性出现问题,可能会造
成重大损失与严重后果。Web 服务的安全性问题成为制约其广泛应用的主要障
碍。现有的安全技术在保护Web 信息安全方面已经十分成熟,主要有:SSL(安
全套接字层)、VPN(虚拟专用网)、防火墙技术和 HTTP 认证。Web 服务作为一项
新技术,有其特殊的安全需求,它提出的新的安全性要求是:选择性加密、端对
端的安全。所以现有的各项技术在保护Web 服务时都存在不足[2]。
针对这种情况,目前对这个问题的解决方法是在消息层上引入安全机制。这
是通过对 SOAP 消息头进行扩展实现的。问题是在如何扩展上,不同的平台有不
同的实现方式,缺乏一个统一的标准。有鉴于此,Web 服务的发起者IBM 和微
软联合Verisign 公司于2002 年4 月发布了 WS-Security 规范。
WS-Security 规范实际上是对 SOAP 协议的扩展。规范本身并没有提出新的
加密算法或安全模型,它只是提供了一个框架,用户可自由地将Web 服务协议、
应用层协议与各种加密技术、安全模型结合起来,以实现 Web 服务环境下消息
的完整性、保密性和消息的认证。但是在异构环境下,由于各个平台采取的安全
机制是无法统一的,所以这对异构平台下 Web 服务的安全交互提出了挑战。
WS-Security 并不指定签名或加密的格式,而是指定如何在SOAP 消息中嵌
入由其它规范定义的安全性信息。具体而言,它在 SOAP 中引入现有的 XML 签
名和XML 加密标准。根据这些标准,它定义了一系列 SOAP 标头元素以包含数
字签名、加密信息和安全令牌等安全信息。WS-Security 是个基于 XML 的安全性
元数据容器的规范。但这个容器的实现方式却因平台而有所区别,有些平台完整
的支持该规范,但是有的则只支持其中的一部分。因此,这就给异构平台下
Web 服务的安全交互提出了新的问题。
JAX-RPC(Java API for XML-based RPC) 、Apache Axis2 、 IBM
Websphere 、BEA Weblogic、微软.NET 均是目前实现 Web 服务的平台。本文采用
其中两个具有代表性的 Web 服务开发平台来进行异构平台 Web 服务安全交互的
研究,其中一个是微软的.NET 平台,另一个是 Apache Axis2 平台。.NET 平台由
Web Services Enhancements ( 简称WSE) 来保障Web 服务的安全。使用 WSE
1
异构平台下 Web 服务的安全交互
和.NET 平台,开发者能够定制和部署自己的安全策略,使用 XML 策略文件或
者代码保障Web 服务的安全。WSE 支持 SOAP 消息的加密、签名,可以使用
X.509 证书、Username 安全令牌、二进制安全令牌、自定义安全令牌、Kerberos 令
牌。还支持 SOAP 消息过滤器和管道技术,支持安全对话,支持面向消息的编程
机制。
Axis2 是Apache 推出的开源项目,具有模块化体系结构,由核心模块和非
核心模块组成。安全方面, Axis2 拥有一个支持 WS-Security 规范的模块,即
Rampart(module)。该模块由Apache wss4j 提供支持,它支持 WS-Security 规范涉
及的对 SOAP 的安全令牌,时间戳,签名,加密等保护方式。
虽然异构环境下各 Web 服务平台都支持 WS-Security 规范,但是异构平台都
有自己的安全机制,鉴于这种机制上的差异,异构平台必须在差异中寻找共同
点来实现安全交互,这是我们应用系统中经常遇到的问题。该课题首先对Axis2
和.NET 异构平台的安全模型进行研究,从中找出双方安全机制中的相同点和不
同点,然后提出了一个简单的针对 Axis2 和.NET 异构平台的 Web 服务安全交互
的模型,并根据这个模型,屏蔽双方模型安全机制中的差异,采用实验实现异
构平台下 Web 服务的安全交互。
§1.2 国内外研究现状
Web 服务间信息的交换采用 SOAP 规范,以 XML 格式作为传递信息的标准。
针对 Web 服务安全性方面的问题,国内外很多标准化组织、公司和社会团体都
在进行各自的研究。IBM、Microsoft、Verisign 和W3C 等业界的知名公司和国际
组织一直致力于制定 Web 服务安全的相关规范,自Web 服务问世以来,针对其
安全性的协议规范也陆续被发布,包括SAML、XML Signature、XML Encryption
、XKMS、WS-Security 等等,它们分别就某一方面的安全问题给出了解决问题的
方法,但总的来说,完全的安全并没有实现,Web 服务的相关技术规范还需要
经历一个不断完善的过程。
WS-Security 是通过安全令牌来加密和签名 SOAP 消息的规范。如果一个服
务要求通过 WS-Security 规范对传递的消息进行安全保护,那么它需要一个安全
策略来支持。安全策略提供了一个 Web 服务的安全需求,例如一个 Web 服务可
能要求对SOAP Body 采用 X.509 证书进行加密和签名。安全策略的描述现在已
经是一个标准:Web Services Security Policy Language (WS-SecurityPolicy)[3]。
异构平台安全交互的前提是,双方遵循共同的安全规范,即WS-Security 规
范。基于该规范,业界还提出了 WS-Policy、WS-Trust、WS-Privacy、WS-Secure
2
参考文献
Conversation、WS-Fedration、WS-Authorization 等规范[4]。有了这些规范的支持,
异构平台下的 Web 服务的安全交互才有了可行性。由于很多平台对这些规范的
支持以插件的形式来支持,所以异构平台下 Web 服务的安全交互实际上就转换
为各个插件之间的通信问题。
.NET 平台对 WS-Security 规范的支持通过 WSE 来实现,Apache Axis2 平台
则通过 Rampart 模块来实现对该规范的支持。通过研究得到,各插件对WS-
Security 规范的支持不但可以通过代码来实现,而且还可以通过配置文件来实现。
配置文件实际上是对 WS-SecurityPolicy 规范的映射。在.NET 平台中,该配置文
件是policyCache.config,在 Apache Axis2 平台中,该配置文件是axis2.xml 和
services.xml。WS-SecurityPolicy 规范是比较复杂,所以把该规范直接映射到异构
环境下的配置文件不是一件容易的事情。
WS-SecurityPolicy 安全策略往往存在一些漏洞,可以导致DOS 攻击和XML
重 写 攻 击 ,因此剑桥大学微软实 验 室的karthb 等人创作了一个工具
SecurityPolicy Advisor 来检测 WS-SecurityPolicy 中存在的典型漏洞以及对产生
的安全策略进行意见上的修补。该工具首先对安全策略进行查询,找到可能的安
全漏洞,并产生一个报告,然后针对该报告提出一个修改意见[5]。
因为每一个平台的架构都比较复杂,各平台对 WS-Security 规范的理解也是
不同的。目前还没有一个有效工具实现异构环境下各平台的直接转换。IBM
Tokyo Research Laboratory 实验室提出了一个通用安全策略传输框架来实现 WS-
SecurityPolicy 规范和配置文件的转换问题,该文件的转换是通过一个中间件模
型来实现的[6]。安全策略和平台的配置文件都是遵循 WS-Security 规范的,所以
该中间件模型的产生也基于 WS-Security 规范。
由于 Web 服务的各个平台均采用了独自的安全机制来保护其Web 服务的安
全,因此同构情况下,Web 服务安全交互的模型都比较成熟,基本实现了 Web
服务的安全交互。由于各平台的安全机制存在差异,虽然国内外已经设计了一些
异构系统下 Web 服务安全交换的模型,但是实现起来是有困难的,本文针对
Axis2 和.NET Web 服务平台的安全机制,设计了一个双方交互的安全模型,并
通过实验证明了该模型的可行性。
§1.3 论文主要工作
本文主要研究异构平台下 Web 服务的安全交互问题。首先本文对 Web 服务
的基本知识做了概括性介绍,包括Web 服务的关键技术,以及两个典型的 Web
服务开发平台。Web 服务安全交互的前提是各个平台对 WS-Security 规范的支持
3
摘要:
展开>>
收起<<
摘要Web服务的兴起极大地促进了分布式系统及异构系统跨平台的集成,它作为一种分布式计算模型,以服务的形式封装应用并对外发布。Web服务基于一系列开放的标准技术,具有松散耦合、语言中立、平台无关、互操作性的优点。越来越多的分布式应用采用Web服务作为其实现的技术基础。对于Web服务以及分布式系统的应用,提供强有力的安全保证至关重要。OASIS组织2002年发布了WebServiceSecurity[1](WS-Security)。WSS协议的产生解决了以下三个安全问题:用户令牌的传递、SOAP消息的完整性、SOAP消息的保密性。WS-Security定义了向SOAP中添加安全性的基本技术,其宏伟...
相关推荐
-
跨境电商商业计划书模版VIP免费
2025-01-09 26 -
跨境电商方案范文VIP免费
2025-01-09 14 -
创业计划书VIP免费
2025-01-09 18 -
xx生鲜APP计划书VIP免费
2025-01-09 12 -
跨境电商创业园商业计划书(盈利模式)VIP免费
2025-01-09 8 -
跨境电商计划书VIP免费
2025-01-09 13 -
绿色食品电商平台项目计划书VIP免费
2025-01-09 22 -
农产品电子商务商业计划书VIP免费
2025-01-09 8 -
农村电商平台商业计划书VIP免费
2025-01-09 13 -
生鲜商城平台商业计划书VIP免费
2025-01-09 21
作者:高德中
分类:高等教育资料
价格:15积分
属性:61 页
大小:558.17KB
格式:DOC
时间:2024-11-19

