基于服务的信息集成与访问模型研究
2011-05-11庄光磊
庄光磊,王 静
(日照职业技术学院,日照 276800)
基于服务的信息集成与访问模型研究
庄光磊,王 静
(日照职业技术学院,日照 276800)
0 引言
传统的信息集成技术,主要有单个的联邦系统和基于组件的分布式系统。单个的联邦系统是指将各个数据源的数据集成到一个系统中,统一管理和维护,各集成系统间处于相对独立状态,系统维护和扩展比较困难。基于组件的分布式系统构建在分布式组件模型上,如CORBA、DCOM、RMI,这种方式克服了单个联邦系统的主要特点,适合于分布式系统,便于维护和扩展,但是CORBA、DCOM、RMI对于服务器端和客户端的耦合性要求非常高[1]。正是由于信息集成过程中动态、可扩展和松耦合性的要求,本文提出基于服务来构建信息集成与访问模型。
1 Web Service
Web Service是建立在开放的Internet基础上的一种分布式网络模型,是面向商业应用的一种框架,有关组织已经发布了一些实现Web Service所需要的协议和标准,如Soap, WSDL, UDDI等。Web Service的目的是将信息和服务在Internet上实现提供和访问,实现跨平台的互操作性。为了实现此目标,Web Service完全基于XML、XSD等独立于平台、独立于软件供应商、独立于编程语言的标准,是创建可互操作的、分布式应用程序的一种平台[2]。
Web Service的基本结构是基于服务提供者、请求者和中介者三个角色,以及服务的发布、发现和服务请求者与服务提供者之间的绑定三个动作而定义的。
提供者:提供服务功能的实体,等待为其他服务和用户提供自己的功能。
请求者:服务功能的使用者,它向服务提供者发送服务请求消息,请求使用服务。
中介者:将服务请求者和合适的服务提供者联系在一起的管理者,UDDI就是一个全球最大的服务中介者。
2 信息集成与访问模型的设计与实现
S O A P引擎采用的是目前比较流行的Tomcat+AXIS。
图1 信息集成与访问模型整体框架图
2.1 异构信息到reml中间信息的包装
在开发信息集成系统的过程中,如何解决信息的异构性是一个关键的问题。异构性是指信息集成系统中两个信息源的不相似程度,而这种不相似发生在不同的级别,最底层指硬件平台、操作系统等异构,而这种跨平台跨操作系统的要求正可以用java+xml来解决。其次指信息自身类型的不同。在本系统中我们将异构信息分为三类:数据库信息(如Oracle、SQL Server、Sybase、Access等)、文本信息(如现有的xml文档)、其它信息(如传感器的动态数据、遗留代码等)。
reml(root-element xml),是异构信息包装后的一种中间格式,严格遵守xml的语法规范,其格式如下:
其中,root为reml的根元素,element为root的子元素,element的个数是可以扩展的,可以是一个或多个且子元素的名称不固定,element下面子元素的名称是随着数据库表中栏位名称的不同变化的,如
可以看出,reml信息就是一个有着更严格定义(有特定标签)的xml信息。
包装部分采用Java语言来实现,以满足系统的可移植性和良好的跨平台性能,开发平台采用Eclipse, Eclipse是一个开放源码的、可扩展的应用开发平台,可以用于构建Web Service、J2EE等各种类型的应用。本系统使用JDBC访问数据库,JDBC(Java DataBase Connectivity)是Java与数据库的接口规范,JDBC定义了一个支持标准SQL功能的通用底层的应用程序编程接口(API),它由Java语言编写的类和接口组成。 JDBC API定义了若干Java中的类,表示数据库链接、SQL指令、结果集、数据库元数据等。它允许Java程序员发送SQL指令并处理结果。通过驱动程序管理器,JDBC API可以利用不同的驱动程序链接不同的数据库系统。JDBC的DatabaseMetaData接口提供了一系列方法可以检验DBMS对特定特性的支持,从而能对特定数据库的特性给予支持。
如图2所示为一个包装前的数据库信息和一个包装后的reml信息(图中只截取了一部分)。
图2 数据库信息图
2.2 基于浏览器的reml解析
对于信息请求方,当获得信息提供方返回的S O A P消息后,实际上返回的是一个String字符串(其中包含reml中严格定义的元素
使用JDOM解析器需将jdom.jar和xerces.jar文件复制到Tomcat网络应用程序的WEB-INFlib目录中。Jdom.jar可以在jdom的官方网站上下载,解析过程中比较重要的几个方法如下:
2.3 系统中的安全策略
对于一个信息集成系统来说信息的安全非常重要,而安全访问控制必须充分考虑认证和授权。目前,网络通信中的安全认证技术有很多,如使用PKI,X.509认证以及SSL通信协议机制,提供单点登录(Single Sign-On, SSO)等安全服务。目前主流的系统授权控制机制是基于角色的授权策略(Role-Based Authorization Control,RBAC),然后借助访问控制列表(Access Control List,ACL)来实现。但是本系统是基于Web Service的,所以信息的动态增加或撤销不可避免,这就增加了安全控制的复杂性,为了达到动态授权和控制信息访问,本系统采用基于门限闭包的授权控制方案[3]。
门限闭包(用ε表示)是一组满足如下三个条件的(t,S)门限方案(其中,S是一组用户的集合且满足
1)Redundant-free,即不存在两个不同的(t1,S1),(t2, S2)∈ε使得
可以证明[4],在某个访问结构T0与ε之间存在着一一对应的关系,即一致性,而正是这种一致性保证了门限闭包策略和安全控制结构是动态一致的,具有很好的可扩展性。
3 结束语
为解决信息集成系统中信息的异构、多样、自治性,提出了一种拥有reml中间信息格式的信息集成与访问模型,但是在系统的应用过程中,同时也发现了一些不足,下个阶段将继续研究如何在用户层增加一个集成信息的远程修改,并对修改过程中的信息定位和权限问题作进一步的研究。
[1]WebServices: NextGenerationApplicationIntegrationArchit ecture[EB/OL].http://www.webservices.ort/,2003.7.
[2]Kishore Channabasavaiah, Kerrie Holley,Edward M, et al.Migrating to a Service-Oriented Architecture Part 1,2[EB/OL].
[3]陈勇,赵曦滨,顾明.Web Services应用系统的多级授权研究及实现[J].计算机应用研究,2006,(07).
[4]Zhang C R,Lam K Y,Jajodia S.Scalable Threshold Closure[J].Theoretical Computer Science,1999,226(1-2):185-206.
Research on information integration and access models built on service
ZHUANG Guang-lei, WANG Jing
针对目前网络中信息的异构性、多样性、分布性等特点,基于Web Service架构构建了一个异构信息集成与访问模型。在此模型中,对各种异构信息进行包装并且提出了一种通用的reml信息中间格式,然后将信息注册到信息注册中心,信息请求方获得reml 格式的信息后,使用reml解析器解析并基于浏览器显示给用户。此外,还针对模型中的安全问题进行了研究。
Web Service;reml;信息集成;门限闭包
王静(1982 -),女,山东日照人,学士,研究方向为并行计算、网格计算。
TP393
A
1009-0134(2011)5(上)-0034-03
10.3969/j.issn.1009-0134.2011.5(上).13
2010-11-21