您现在正在浏览:首页 > 职教文章 > 职教论文 > 安全教育Web服务技术框架及互操作性研究

安全教育Web服务技术框架及互操作性研究

日期: 2010/5/10 浏览: 116 来源: 学海网收集整理 作者: 佚名

安全教育Web服务技术框架及互操作性研究

王金如/江苏省泰兴职业教育中心校

摘要:基于XML技术的Web服务技术可以解决教育管理信息系统的互操作问题,通过资源服务UDDI中心,教育管理系统各部分之间可以实现互操作。通过PCI加密卡执行数字签名、加密等密码计算功能可保证操作的安全性。

关键词:WebService WSDL 文件 资源服务UDDI中心 SOAP 完整性 保密性

EMIF适合于解决复杂系统对接模式的教育管理信息系统互操作问题,对于每个应用,通过为其数据库编写连接代码来实现互操作性。对于解决现有的教育MIS系统的互操作问题,它不失为一个有效的解决方案。从发展来看,教育管理信息系统需要摆脱独立解决方案的实现模式,需要舍弃复杂系统连接的实现方法。基于XML技术的Web服务正是解决这一问题的有效手段,代表着发展方向。

1 Web服务技术

Web服务是现有应用面向Internet的一个延伸,是现有Internet应用面向更好的互操作能力的一个延伸。Web服务能够统一地封装信息、行为、数据表现以及业务流程,而无需考虑应用所在的环境是使用何种系统和设备。Web服务技术的主要目标就是在现有的各种异种平台的基础上构筑一个通用的平台无关、语言无关的技术层,各种不同平台之上的应用依靠这个技术层来实施彼此的连接和集成。

在教育管理信息系统中,我们可以把现有的应用程序发布为Web服务,也可以对于应用程序以明确作为Web服务运行的目的来设计和生成服务的接口函数,即直接将应用程序开发为Web服务,且后种方法更好。其它应用程序可以调用这些Web服务。调用Web服务需要采用如下步骤:首先通过UDDI注册中心寻找需要的应用程序(Web服务);然后通过阅读和理解Web服务的WSDL文档来知道如何使用这个Web服务,该文档中包含了如请求格式、参数范围和方法名称等调用Web服务需要的信息以及预期的服务返回信息;最后你可以在你的应用程序中调用这个被发现的应用程序(Web服务),Web服务通过从一个应用程序发送消息给另外一个应用程序来实施基本的处理。这些消息使用SOAP(简单对象访问协议)和XML来格式化,在这些消息中将包含简单的处理信息,如程序运行的参数等。一旦被调用的应用程序(Web服务)收到请求消息并实施运行,那么它将会使用另一个SOAP消息来返回结果信息。调用程序将会解码这个消息,以获得调用结果。在程序中调用Web服务和在程序中调用自己的应用程序代码的方法是基本相同的,这一相同性是由Web服务开发环境(比如IBM的Web Service Application Developr或Microsoft Visual Studio.NET)来保证的。不同点在于,Web服务可以被自由地部署在Internet上,使用Web服务技术来实施访问。

2 基于教育Web服务技术框架的资源互操作

下面举例说明基于Web服务技术的教育信息互操作的实现。假设在一个网络环境中已有学生管理系统、图书馆管理系统和教学管理系统,现在图书馆管理系统和教学管理系统需要从学生管理系统中获取学生数据,那么学生管理系统作为WSP,提供学生数据Web服务,图书馆和教学管理系统作为WSC,使用学生数据Web服务。学生管理系统作为服务提供方,主要是定义要提供给他人访问的服务,生成接口文件(WSDL文件),并把这个服务接口和其它一些相关信息(都是XML的格式)注册到“资源服务UDDI中心”。

资源服务UDDI中心,就是实现各教育信息系统节点Web Servzce接口的注册、发现和集成功能。它的技术基础UDDI是一套基于Web的、分布式的、为Web Service提供的信息注册中心标准规范,同时也包含一组使服务提供者能将自身提供的Web Services注册以便于服务使用者能够发现的访问协议的实现标准。图书馆和教学管理系统作为服务请求者,则是通过资源服务UDDI中心查询服务地址和服务接口,再通过它们将自己的应用“绑定”到想要的服务上来使用这个服务。

3 教育Web服务技术框架的安全机制

Web服务的安全性问题主要是:SOAP安全令牌(SecurityToken)的传递以及如何确保Web服务的用户和Web服务之间传递的SOAP消息的安全。SOAP安全令牌包含用来证实SOAP消息发送者身份的信息,Web服务可以据此对用户进行认证和授权。SOAP消息的安全性包括消息的完整性和保密性。

为解决教育Web服务技术框架安全性问题,可采用在教务、图书、学生、财务等管理信息系统节点增加PCI加密卡,用于执行数字签名、加密等密码计算功能。至于如何将Web Service协议、应用层协议与各种加密技术、安全模型结合起来,以实现Web Service环境下消息的完整性、保密性和消息的认证。IBM和微软联合Verisign公司于2002年4月发布的WS Security规范提供了一个标准的框架。它在SOAP中引入现有的XMLSignature和XMLEncryption标准。根据这些标准,它定义了一系列SOAP消息头块(HeaderBlock)以包含数字签名、加密信息和安全令牌等安全信息。其中XML元素“”元素是由WS Security定义的。其它安全信息都作为子元素包含在“”元素中。每个SOAP消息可以包含多个“”头块。每个头块都可以通过属性S:actor指定哪个SOAP节点将对其进行处理。属性S:mustUnderstand则规定该SOAP节点是否必须对其进行处理。

3.1 认证

认证的关键在于,消息的发送者如何将能证明自己身份的安全令牌传递给接收者。WS Security定义了三种安全元素(SecurityElement)来传递各种安全令牌。

(1)该元素用来传递简单的用户名和密码给接收者。

(2)该元素用来传递经过编码的二进制安全令牌。

由于XML文档并不能直接包含任意的二进制数据,所以二进制安全令牌必须经过编码才能包含在SOAP消息中。编码类型由属性“EncodingType”指定,标准预定义Base64和十六进制数两种编码类型。安全令牌的类型由属性“ValueType”来指定,标准预定义X.509证书和Kerberos票据(Ticket)两种安全令牌。

(3)< SecurityTokenReference>该元素用来传递一个外部的安全令牌。

在前面两种传递方式中, 安全令牌本身就包含在SOAP消息中。而这种方式则是指定一个外部URI,由接收者根据这个URI去获取相应的安全令牌。

3.2 消息的完整性

消息的完整性包括:eq \o\ac(○,1)消息在传递过程中不会被窜改;eq \o\ac(○,2)消息的接收者可以确认消息是由授权用户发送的。由于SOAP消息常常跨越Internet进行传递,因此消息的完整性显得尤为重要。为了确保消息的完整性,WS Security采用了W3C的XML Signature标准。与一般的数字签名不同的是,XML Signature允许对整个SOAP消息或是其中的一部分进行数字签名。允许对SOAP消息的指定部分进行数字签名是非常重要的。一方面由于只对必要的数据进行签名,减少了性能损失;另一方面,由于在SOAP消息传递过程中,某些中间节点会对SOAP头部进行(合法的)修改。我们可以在进行数字签名时忽略掉那些允许修改的部分,这样当SOAP消息被修改时,就不会破坏原来的数字签名了。

3.3消息的保密性

数字签名只能确保消息的完整性。为了防止敏感数据的泄漏,还必须对消息进行加密。WS Security采用了W3C的XML Encryption标准。XML Encryption允许对整个SOAP消息或是其中的一部分进行加密。允许只对SOAP消息的指定部分进行加密可以减少因加密而导致的性能损失。首先将需要加密的数据用元素“”替代,子元素“”指定加密的算法;子元素“”指出加密所采用的密钥;子元素“”指出加密后数据。然后在SOAP消息的头部增加一个元素“”,它的子元素指向消息体中被加密的那部分数据。加密用的密钥可以是接收方事先已经知道的,也可以用接收方的密钥(如它的公钥)加密后,放在消息头部的“”元素中发给对方。

参考文献:

(1)优质Web系统—性能、安全性和可用性 [美]达斯汀等著 潘英译

(2)ActiveX Web开发指南 (美)Adam Blum

(3)Web数据库互连技术开发指南 黄光奇 李子木 凌云翔等

(4)XML基础教程 [美]Simon St.Laurent

本人王金如 男 1963.1月生 江苏省泰兴职教中心校电子信息系副主任,负责培训及继续教育工作.计算机应用专业本科, 计算机操作工技师,中学一级职称.?联系地址是:江苏省泰兴职业教育中心校电子信息系

电话是:052387703358 13775786256。?QQ是:329288449 邮编:225400?

邮箱是:wjr2008sun@sina.com ?wjr2008sun@126.com


安全教育Web服务技术框架及互操作性研究.doc

返回顶部