(计算机科学与技术专业论文)基于漏洞测试的web服务安全性测评研究.pdf_第1页
(计算机科学与技术专业论文)基于漏洞测试的web服务安全性测评研究.pdf_第2页
(计算机科学与技术专业论文)基于漏洞测试的web服务安全性测评研究.pdf_第3页
(计算机科学与技术专业论文)基于漏洞测试的web服务安全性测评研究.pdf_第4页
(计算机科学与技术专业论文)基于漏洞测试的web服务安全性测评研究.pdf_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 面向服务架构的w - e b 服务是一种新兴的分布式计算模型,它是以服务的形式封 装应用并对外发布。服务质量( q o s ) 问题是面向服务的体系结构的一个重要子问 题。传统上都是在接受服务后对服务质量给一个评价,结论一般也都是模糊的。但 是,要选择一个服务为我所用时,预知服务的服务质量是非常必要和重要的,尤其 需要有定量的评价。在w 曲服务的q o s 诸多评价指标中,有些是很容易量化度量的, 有些却非常困难,w 曲服务的q o s 中的安全性因素指标就属于后者。相对于其他q o s 因素指标而言,安全性因素指标随着w 曲服务应用的深入越来越重要。但是,和所 有网络应用安全评估一样,给w 曲服务一个科学、客观、有信服力的安全评价是非 常困难的。 影响w e b 服务安全的因素有很多,而且随着技术的发展和应用的深入,还有不 断变化。现阶段,各种类型的安全漏洞是影响w 曲服务安全性的一个重要方面, 因此对漏洞进行客观、正确的定量化事前评估,就可以实现对w ,e b 服务安全性比 较精确的描述,从而能合理、直观地反映服务安全性高低,便于对服务进行选择、 部署安全措施,保证服务质量。本文采用层次分析方法,对w e b 服务q o s 中涉及 安全性的指标数据的不完备性及结构关系的模糊性进行研究和分析,应用模糊理论 和运筹学理论,建立安全指标评价体系,确定w e b 服务q o s 中与安全指标相关的 属性的细化度量,最终给出w e b 服务的安全指标定量化数值和安全等级。该评估方 法实现了对安全性较精确的描述,从而能合理、直观地反映服务的安全性,较好地 解决了w e b 服务质量管理中的瓶颈问题。该方法对q o s 其他子问题的定量化研究 也有一定的指导意义和借鉴。 关键词:w e b 服务,q o s ,定量化,安全漏洞,层次分析 r e s e a r c ho nt h ew e bs e r v i c es e c u r i t ye v a l u a t i o nb a s e do nt e s t i n g v u l n e r a b i l i t i e s g a o y a n g ( c o m p u t e rs c i e n c ea n dt e c h n o l o g y ) d i r e c t e db yp r o f e s s o rd u a ny o u x i a n g a b s t r a c t s e r v i c e - o r i e n t e d a r c h i t e c t u r ei san e wd i s t r i b u t e dc o m p u t i n gt e c h n o l o g y i ti si nt h ef o r m o fs e r v i c ef o re n c a p s u l a t i o n ,a p p l i c a t i o na n dp u b l i s h i n g 。q o si sa p a r ti nt h ep r o b l e m so f s e r v i c e - o r i e n t e d a r c h i t e c t u r e t r a d i t i o n a l l y ,e v a l u a t i o no fq o si sg i v e na f t e ru s i n gt h e s e r v i c e ,a n dt h ee v a l u a t i o ni sf u z z y b u tw h e nw ec h o o s eas e r v i c e ,i ti si m p o r t a n ta n d n e c e s s a r yt ok n o wt h eq o so fs e r v i c e ,e s p e c i a l l yt h eq o so fs e r v i c ew i mq u a n t i t a t i v e e v a l u a t i o n i nt h eq o sa t t r i b u t e so fw e bs e r v i c e s ,s o m ea r ee a s yt oe v a l u a t eq u a n t i t a t i v e l y , b u ts o m ea r en o t s e c u r i t ya t t r i b u t eb e l o n g st ot h el a t t e r c o m p a r e dw i t ho t h e rq o s a t t r i b u t e s , s e c u r i t ya t t r i b u t eb e c o m e sm o r ea n dm o r ei m p o r t a n tw i t i lt h ed e v e l o p m e n to fw e b s e r v i c e s a p p l i c a t i o n b u ts a m ew i t ha l ls e c u r i t ye v a l u a t i o n , i ti sd i f f i c u l tt og i v ew e bs e r v i c e sa s c i e n t i f i c ,o b j e c t i v ea n dc r e d i b l es e c u r i t ye v a l u a t i o n t h e r ea r em a n yf a c t o r sa f f e c t i n gt h es e c u r i t yo fw e bs e r v i c e s ,a n dt h e s ef a c t o r sa r e c h a n g i n gw i t ht h ed e v e l o p m e n to ft e c h n o l o g y n o w a d a y s ,t h e r ea les e v e r a lv u l n e r a b i l i t i e s t h r e a t e n i n gw e bs e r v i c e ss e c u r i t y ,s o i ti s m e a n i n g f u la n dh e l p f u l t oe v a l u a t et h e m q u a n t i t a t i v e l yw i t ho b j e c t i v i t ya n dr a t i o n a l i t y ,i no r d e rt h a ti ti st on o to n l yr e f l e c tt h es e c u r i t y o fs e r v i c er e a s o n a b l ya n dd i r e c t l y ,b u ta l s oh e l p f u lt oc h o o s ea n dd e p l o ys e c u r i t ym e a s u r e s a n de n s u r et h eq u a l i t yo fs e r v i c e n i sa r t i c l eu s e sa h pm e t h o dt od i s s e c ts e c u r i t yi n d i c a t o r s t h a tw i t hf u z z ys t r u c t u r e ,a n du s e so p e r a t i o n sr e s e a r c ha n df u z z ym a t h e m a t i c a lt h e o r yt o c o n s t r u c te v a l u a t i o ns y s t e mf o re v a l u a t i n gs e c u r i t yi nq o s t h i sm e t h o dd e s c r i b e st h e s e c u r i t ym o r ea c c u r a t e l yt h a nb e f o r e ,s oi tr e f l e c tt h es e c u r i t yo fw e b s e r v i c e sr e a s o n a b l ya n d d i r e c t l y ,a n ds o l v e st h eb o t t l e n e c ko fw e bs e r v i c e sq u a l i t ym a n a g e m e n t t h i sm e t h o di s i n s t r u c t i v et ot h eo t h e rs u b p r o b l e m so fq o s k e yw o r d s :w e bs e r v i c e ,q o s ,v u l n e r a b i l i t y ,s e c u r i t y ,a h p 关于学位论文的独创性声明 本人郑重声明:所呈交的论文是本人在指导教师指导下独立进行研究工作所取得的 成果,论文中有关资料和数据是实事求是的。尽我所知,除文中已经加以标注和致谢外, 本论文不包含其他人已经发表或撰写的研究成果,也不包含本人或他人为获得中国石油 大学( 华东) 或其它教育机构的学位或学历证书而使用过的材料。与我一同工作的同志 对研究所做的任何贡献均已在论文中作出了明确的说明。 若有不实之处,本人愿意承担相关法律责任。 学位论文作者签名: 扇怕 日期:矽。年厂月呷日 学位论文使用授权书 本人完全同意中国石油大学( 华东) 有权使用本学位论文( 包括但不限于其印 刷版和电子版) ,使用方式包括但不限于:保留学位论文,按规定向国家有关部门 ( 机构) 送交学位论文,以学术交流为目的赠送和交换学位论文,允许学位论文被 查阅、借阅和复印,将学位论文的全部或部分内容编入有关数据库进行检索,采用 影印、缩印或其他复制手段保存学位论文。 保密学位论文在解密后的使用授权同上。 学位论文作者签名: 指导教师签名: 为饧 日期:沙卜年岁月叩日 日期沙啤f 月7 日 中国钿油人学( 华东) 顸i = 学位论文 1 1 研究背景 第一章绪论 w e b 服务作为一种分布式计算模型,以服务的形式封装应用并对外发布。w e b 服务 基于一系列开放性的标准技术,与传统的i n t e m e t 服务比较,具有松散耦合、语言中立、 平台无关、互操作性等优点,使其能满足用户日益增长的需求,具有广泛的应用前景。 w e b 服务是把“软件作为服务的一种软件架构和应用模式。和传统意义上的 i n t e m e t j 艮务一样,w e b j 艮务的q o s ( q u a l i t y o fs e r v i c e ,服务质量) 是非常重要的, 它包括运行成本、响应时间、可靠性、可用性、事务性、信誉度、安全性等方面,从不 同的角度反映了w r e b 服务的性能,描述了服务满足消费者需求的能力。通常,服务质量 都是在接受服务后对服务质量给出一个评价,结论有些也是模糊的,尽管如此,被评价 服务质量好的服务会更受青睐。因此,人们更希望在使用服务前能预知服务质量,以满 足自己的服务需求。w e b 服务质量由很多因素指标来决定,在这些诸多因素指标中,有 些是很容易量化、度量的,即可以用可计算的数值量化出评价指标,例如价格、服务响 应时间等;有些是模糊的,量化和度量非常困难,例如有效性、安全性等。当前在q o s 研究方面,特别是服务响应时间、延迟以及吞吐率等易度量属性的指标研究方面,提出 了许多支持q o s 约束的w 曲服务发现和选择模型以及评估方法,用户可以从自身角度根 据评估结果选择响应快、可用性高、性能好的服务。而随着安全问题的日益增多,安全 指标度量成为当前q o s 评价体系中必须要解决的问题。 作为一门新的技术,w | e b 服务在发展过程中总会遇到各种各样的问题。其中安全问 题尤为突出,被认为是w e b 服务发展过程中急需解决的关键问题。只有保证w e b 服务 的安全性,才能保证各种应用系统的正常运作。同时w e b 服务要能够被广大企业用户 所接受,也必须要解决它所面临的各种安全问题。与传统的网络安全相比较,w e b 服务 所面临的安全问题呈现出新的特性,主要包括端对端的信息安全和身份验证及授权。针 对这两个方面,人们又研究制定了一些保障w e b 服务安全性的关键技术,如x m l s i g n a t u r e 、x m le n c r y p t i o n 、x k m s 、s a m l 、x a c m l ,w s s e c u r i t y 规范等。此外人 们还提出了基于角色和属性的访问控制模型,用来保障w ,e b 服务的认证和授权。与此 同时,人们也在研究如何来评估w 曲服务的安全,即测试评估w e b 服务是否达标,亦 即测试服务是否提供身份验证机制,所交换的消息是否具有保密性和完整性,请求或消 第章绪论 息是否具有不可否认性等。只有服务实现了必要的安全措施,而且评估结果达到了安全 要求,才能保证应用系统的正常运行,用户才能放心使用。 因此,广义上或者更确切的说,w e b 服务安全也是服务质量的一个重要方面,安全 测试评估成为q o s 的一个重要的研究方面。但是目前w e b 服务安全性相关的研究大多 集中在w e b 服务安全实现机制方面,对w e b 服务安全评估大多是根据信息安全标准给 出一个模糊的、简单的结论。由于w e b 服务相比传统的信息系统所体现出的松散耦合、 平台无关、互操作性以及端对端的安全新特性,使得传统的信息安全评价的可用性比较 差,服务所采取的安全措施没有合理考虑进去,能否达到用户安全要求难以给出信服的 结论。同时,随着网络技术的发展和w e b 服务的深入,安全性在q o s 中的权重急剧变 大,所以,为了提高w e b 服务安全性和改进w e b 安全技术,降低安全风险,提高w c b 服务的可用性,进行w e b 服务q o s 中的安全性量化、定量评估研究是非常必要的。 1 2 研究现状 近年来,w e b 服务的体系架构和技术原理已经逐渐完善,w e b 服务体系也有自己的 协议栈来支撑,其中s o a p 协议的提出和应用,实现了大量异构程序和平台之间的互操 作,使许多服务应用程序容易集成在一起。 随着网络中w - e b 服务的数量越来越多,用户就面临一个服务选择问题:如何选择可 用性高性能好的服务。2 0 0 4 年,弗吉尼亚理工学院的o u z z a n i 等人明确定义y q o s ,至 此q o s 作为评估w e b 服务质量和性能的一个度量标准【i l ,得到了学界和业界的认同。此 后研究者们相继提出了众多服务质量属性,如响应时间、延迟、吞吐率、可靠性、可用 性等。随着q o s 属性的扩展,q o s 度量评价方法也在不断提出和发展。当前主要的度量 方法有:检测底层数据包、使用代理( p r o x y ) 、修改s o a p 引擎库和使用应用响应测量 ( a r m ) 等。2 0 0 6 年,复旦大学研究者郑奕的w r e bs e r v i c e s 的服务质量( q u a l i t yo f s e r v i c e ) 模型与度量研究提出了基于a p i h o o k 的度量方法,用于度量w r e b 服务q o s 。 这种度量方法就是拦截w e b 服务在发送和接收s o a p 消息时,通过对操作系统网络套接 字服务a p i 的调用,转而执行度量程序的相应函数。度量程序可以识别出s o a p 消息传输 过程中所使用的承载协议,提取s o a p 消息的内容,并对整个w e b 服务调用过程进行度 量。此方法可以在不改变服务应用和环境的前提下,将度量程序动态地插入到原有应用 中进行度量【2 1 ,与其他方法比较具有客观化、自动化和轻量化特点,而这些特点也正是 当i i i w 曲服务q o s 中各属性度量和评估的趋势。其中度量程序能识别s o a p 消息承载的 2 中国石油大学( 华东) 硕十学位论文 协议以及s o a p 消息的内容,可以获取安全性方面的部分信息,如s o a p 消息采取了什么 安全机制,但是这种方法重点在于通过提取服务端和客户端的响应时问来定量化度量可 用性和可靠性,对安全性没有提出一个定量化度量的标准和方案,只是单纯的依据消息 采取的安全机制来定性衡量。 随着w e b 服务的应用越来越广泛,对于安全的需求也日益强烈,所以近年来安全性 也被加入到q o s 中,成为重要的q o s 度量属性之一,并且权值越来越大。当前国外对 w 曲服务安全性的研究主要体现在结合概念性w e b 服务协议栈,研究制定w e b 服务安全 性规范以及相应的规范的实现,比如人们将传统的数字签名、加密以及数字证书等技术 引入到x m l 中,形成的x m l 安全机制:x m ls i g n a t u r e 、x m le n c r y p t i o n 、x k m s 、s a m l 、 x a c m l 等。但是这些机制都是独立使用的,当应用到l 格式的s o a p 消息中时,会 使得消息容量变大,增加传输成本。2 0 0 4 年4 月,w s s e c u r i t y 规范通过o a s i s 的批准, 成为正式的服务安全标准【3 l ,主要是用来规定如何将现有的x m l 安全机制统一应用于 s o a p 消息环境,为w | e b 服务提供了保证应用层安全性的机制。为了加强w 曲服务的安全 性,i b m 和m i c r o s o r 公司发布了w 曲服务安全性规范体系框架,描述了w 曲服务环境的 安全发展策略和规划。根据这个发展规划,人们将开发系列的w 曲服务安全规范和机 制,包括w s s e c u r i t y 、w s - p o l i c y 、w s t r u s t 、w s p r i v a c y 、w s c o n v e r s a t i o n 、w s - f e d e r a t i o n 和w s a u t h o r i z a t i o n 等d 1 。但是这些规范本身,除y w s s e c u r i t y 夕b ,并没有提供保证安 全性的措施,只是提供了安全模型的框架,在很多实现细节上还有待于继续深入研究。 而国内针对w 曲服务安全性的研究较弱,大多是在分析和跟踪w 曲服务安全性规范基础 上,对s o a p 协议进行扩展,建立安全模型,实现安全功能,来保证端对端传输安全。 a c s a 与m i t r ec o r p o r a t i o n 联合组织了对安全度量的讨论,并对其做出了定义:信 息系统安全度量是通过一些评估过程从一个偏序集中选择一个值,它表示了信息系统安 全相关的质量,提供或用于生产一种关于信任度的描述、预言或比较【5 l 。这个定义比较 全面的涵盖了安全评估的概念,提出要从客户对系统安全的信任度角度去度量安全性。 2 0 0 7 年6 月1 4 同发布的中华人民共和国国家标准信息安全技术信息安全风险评估 规范中,提出了安全风险评估分析要涉及资产、威胁、脆弱性三个基本要素,制定了 评估实施流程和评估标准1 6 1 ,目的是使网络信息安全评估有一个统一的标准。其评估原 理和流程值得w e b 服务评估借鉴,但是此项规范评估标准是针对传统网络安全的,重点 是网络资产方面,对安全漏洞和隐患方面赋值依据明显不细致,不能适合w e b 服务松散 耦合、平台无关以及端对端安全的特点。 3 第一章绪论 当日玎w e b 服务安全面临的威胁主要是安全漏洞,而安全漏洞也成为安全隐患的一 个最为明显的表现形式。科学的安全性评估就是把这些安全漏洞进行评估,作为度量的 一个依据。2 0 0 7 年,意大利的研究者vc a s o l a 、a r f a s o l i n o 、n m a z z o c c a 、p t r a m o n t a n a 等人针对s o a 的性能和安全,提出了一种基于机制的服务评估模型1 7 1 ,把 安全和性能两个方面结合起来评估w e b 服务的可用性,根据服务实施的安全机制情况, 对安全性中的安全性进行度量。在这里安全定量评估成为了评估可用性的依据之一,这 罩的评估只是根据w e b 服务安全措施和机制的实施情况来度量安全性,比如只部署了 x m l 加密机制的服务安全等级要低于使用w s s e c u r i t y 加密规范的服务安全等级。但 是安全机制的部署情况只是评估w r e b 服务安全要考虑的一个方面,并不是全部,还有 w e b 服务应用层漏洞。2 0 0 7 年,s a nj o s es t a t eu n i v e r s i t yc o m p u t e re n g i n e e r i n gd e p a r t m e n t 的w | e i d e rd y u ,p a s s a r a w a r i ns u p t h a w e e s u k ,d h a n y aa r a v i n d 等人根据长期对w e b 服务 应用层安全漏洞的追踪,来研究w 曲服务应用漏洞1 8 】的特点和危害。他们主要是进行漏 洞测试,分析了各种w e b 服务应用漏洞的攻击原理并根据其基本原理进行分类,统计 了各类漏洞的发生频率和趋势,并没有进行量化评估,但是其统计结果和分析原理值得 借鉴。2 0 0 8 年,太原理工大学研究者武小娟的w 曲服务安全风险评估提出对安全 漏洞进行了加权评估,从漏洞分析和安全机制实施的角度,利用模糊数学的理论,对服 务系统划分了详细的安全等级1 9 1 ,但是权重赋值是人为假设的,没有令人信服的理论依 据。 1 3 论文组织 第一章:绪论 从w e b 服务重要性、服务安全重要性和安全评估重要性三个角度介绍了研究背景 和国内外的研究现状,介绍了论文的主要研究内容和意义。 第二章:w e b 服务与q o s 分析了w e b 服务的体系结构和服务关键技术、当前w e b 安全机制的研究和进展情 况,以及q o s 的基础内容。 第三章:w e b 服务安全 从q o s 角度分析对w 曲服务安全造成威胁的因素,以及实现w e b 服务安全要求的 关键技术和安全机制。 第四章:w e b 服务安全评估 4 中国石油人学( 华东) 硕 学位论文 分析w e b 服务安全的特点、与其他信息安全的不同之处,以及评估的方法和策略。 第五章:机密性量化评估 对w e b 服务采用安全漏洞定量化评估,提出安全评估的具体措施和方法步骤,确 定服务的机密性安全等级。 第六章:结论 总结了论文的研究工作,并给出了进一步的研究方向。 5 * 一 w e b 月* ,q o s 21w e b 服务的概念 第二章w e b 服务与q o s 随着i n t e m e t 的迅速发展,许多网络应用体系结构纷纷出现,这些网络应用体系结 构土要是基于c s 模式的分靠式结构和基于b s 模式的w e b 应用结构。在一段时| 甘j 内, 这砦网络应用体系结构还能较好的满足人们的需要。但是随着信息化建设和电子商务的 的快速发展,这些体系结构开始暴露出自身的不足,主要表现在其紧密耦台的体系结构 使得应用程序两端必须遵循同样的a p i 约束,导致不同的应用系统之问的集成变的相当 困难,不方便在i n t e m e t 上推广。在这种背景下,w e b 服务技术应运而生,具有松散耦 台、平台无关、互操作性强的特点,很好的解决了这一问题,使不同的应用系统之间相 互集战容易被实现,这样多个大公司之间相互协作就变得更加容易,同时也方便了信息 技术提供商向客户扩大业务范围【”i 。 w e b 服务作为一种分布式计算模型,以服务的形式封装应用并对外发靠,并能在 所有支持i n t e r a c t 通讯的操作系统上实施运行,是自描述的、模块化的、由u r i 标识的 应用程序1 1 2 1 。 2i 1w e b 服务体系架构模型 在上文中可知,传统的网络体系结构分两种:b s 结构和c s 结构。这两种体系 结构特点是紧密耦合,其体系结构也是遵循一个服务端到多个客户端的数据交互模式 = ! ;数据以点对点的方式传输。图2 1 是b s 结构图,c s 结构也与其类似只是相对应 的w e b 服务器变为应用程序服务器。 w e 瓢b 赧腑务器藉翻覃i 爵嚣 嚣7 n 圈2 - 1b $ 结构图 f i g u r e2 - 1 b ss t r a e t u r e 中国油犬学( 华东) 帧卜学位论文 这样的体系结构要求客户端和服务器端的应用程序两端必须遵循同样的a p i 约束, 具有紧密耦合的特点。这种体系结构的应用程序在网络中很孤立,是很难在i n t e r n e t 上 相互集成和推广的。 w e b 服务的体系结构相比于上面两种结构,其优势所在就是具有松散耦合的特点, 便于实现服务应用集成。w e b 服务把所有的应用实体都抽象成服务,其体系结构是由三 个角色( 服务提供者、服务注册中心、服务请求者) 和三个基本操作( 绑定、发布、查 询) 以及对应的标准协议构成。具体的体系结构见图2 2 l t t l 。 图2 - 2w e b 服务的体系结构模型 f i g u r e2 - 2 w e bs e r v i c ea r c h i t e c t u r e w e b 服务体系结构中的角色具体介绍如下: ( 1 ) 服务提供者:服务的所有者,在服务注册中心发布自己的服务,并对服务请 求者的请求进行响应。 ( 2 ) 服务请求者:在服务注册中心查找自己需要的服务,向服务提供者发起服务 请求,使用所需的服务。 ( 3 ) 服务注册中心:注册已经发布的w e b 服务,并对其进行分类,向服务请求者 提供服务查询和搜索。 w e b 服务体系结构中的三种角色,在实现w e b 服务应用的同时,相互之间要发生 三个操作:发布服务描述、查询或查找服务描述以及根据服务描述绑定或者调用服务, 这些具体操作如下: ( 1 ) 发布:服务提供者向服务注册中心提供服务的访问接口、功能等信息。 ( 2 ) 查找:服务请求者通过在服务注册中心搜索服务,获得自己需要的w e b 服务 7 第_ 二章w e b 服务jq o s 的描述信息。 ( 3 ) 绑定:服务请求者和服务提供者绑定在一起,服务请求者能够连接到w e b 服 务,从而实现对服务的调用。 2 1 2w e b 服务协议栈 实现一个完整的w e b 服务体系结构需要有一系列的协议规范来支撑,其中最基本 的协议有s o a p 、u d d i 、w s d l 等。协议栈的作用就是使不同层次的协议能够发挥各 自作用,保证不同接口、不同平台的w e b 服务应用程序之间能够相互通信,最终实现 w e b 服务在松散耦合下的数据传输和对象访问。协议栈具体如图2 3 【i i 】。 w e b 服务体系分层 协议规范 事务管理 工作流层w s f l 服务发现层 u d d i 服 管安务 服务发布层 u d d i 理全质 服务描述层w s d l 且 亘 消息层 s o a p 网络传输层h m :f t 只s m t p 图2 - 3w e b 服务协议栈 f i g u r e2 - 3w e b s e r v i c ep r o t o c o ls t a c k 下面通过一个简单的w e b 服务实例( 其功能是实现客户端提供的两个整数求和) , 具体介绍一下协议栈的使用: ( 1 ) 网络传输层 w e b 服务协议栈的基础层是网络传输层,它的目标是向应用层程序之间的通信提供 有效、可靠、保证质量的网络传输。服务请求者就是通过传输层的协议来调用w e b 服 务。目前网络传输层的协议是i n t e r n e t 中已经普遍部署和使用的协议,如h t t p 、s m t p 、 f t p 等。例如下面的一个h t t p 部分信息: p o s t i n t s e r v e r o b j e c t l7h t t p i 1 h o s t :2 0 2 1 9 4 1 5 8 。1 5 5 c o n t e m t y p e :t e x t x m l c o n t e n t l e n g t h :16 8 8 中国石油人学( 华东) 硕七学位论文 这个h t t p 协议中包含了数据传输的方向( 客户端向服务端发送) 、传输协议版本、 客户端信息等,这些都是数据在网络传输层传递时所必须的信息。 ( 2 ) 消息层 消息层的协议主要是基于x m l 格式的s o a p 消息协议。消息层构建在网络传输层 之上,这样使得s o a p 消息可以单独使用,也可以与网络传输层的协议联合使用。s o a p 协议主要是用来实现w r e b 服务中端对端数据传输的需要【3 孔。 例如实现整数求和功能的w e b 服务,在网络传输层使用h t t p 协议,通过s o a p 消息绑定h 1 v r p 协议,实现一个s o a p 请求,其中s u m r e q u e s t 为请求元素: p o s t t i n t _ s e r v e r o b j e c t l7h t t p 1 1 h o s t :2 0 2 1 9 4 1 5 8 1 5 5 c o n t e n t t y p e :t e x t x m l c o n t e m - l e n g t h :1 6 8 s o a p m e t h o d n a m e :u r n i n t c o m :i n t - # i n t s u m 1 2 下面是对上面s o a p 请求的响应,其中s u m r e s p o n s e 为响应元素: 2 0 0o k c o n t e n t - t y p e :t e x t x m l c o n t e n t l e n g t h :14 6 3 ( 3 ) 服务描述层 9 第二章w e b 服务巧q o s 服务描述层协议是基于x m l 格式的w s d l 协议,其作用是定义服务的特定信息, 包括服务接口、功能、结构等。 下面在服务描述层对这个整数求和的w e b 服务进行一下定义和细节描述。首先定 义的是s o a p 消息的数据类型s u m r e q u e s t 、s u m r e s p o n s e 以及它们分别包含的予元素 f i r s t 、s e c o n d 和r e s u l t :其次使用m e s s a g e 元素来定义三种消息:s u m r e q u e s t 、 s u m r e s p o n s e 、s u m f a u l t ,分别为请求消息,响应消息和服务响应出错时的消息;接着 通过p o r t t y p e 节点定义主要的业务操作;此外还将定义s o a p 的绑定、w e b 服务的名 称、操作和端口。实例的一部分w s d l 信息如下: ? x m lv e r s i o n = ”1 0 ”e n c o d i n g = ”u t f - 8 ” x s d :e l e m e n tn a m e = ”r e s u l t 劬p e - x s d :i n t 胗 1 0 中国白- 油大学( 华东) 硕 :学位论文 e l e m e n tr e f = ”d e s c r i p t i o n ”m i n o c c u r s = ”0 ”m a x o c c u r s = ”胁 1 2 中国石油人学( 华东) 顺 学位论文 e l e m e n tr e f = ”i d e n t i f i e r b a g ”m i n o c c u r s = ”0 ”m a x o e c u r s2 ”l ”伊 上述信息只是u d d i 协议中b u s i n e s s e n t i t y 元素( 表示商业实体信息) 的内容,包 含了服务实施注册的u d d i 操作入口站点以及该服务提供者的i d ,用户可以根据相关 信息搜索服务。 ( 5 ) 服务工作流层 为了完成复杂的任务,往往需要多个w e b 服务相互协作。在服务工作流层,w e b 服 务通过流程模型定义了服务要实现的操作以及服务交互的有向图。这个w e b 服务实例 的有向图就是图2 - 4 。 图2 - 4 服务的有向图 f i g u r e 2 - 4 s e r v i c ed i g r a p h 以上是举例说明协议栈在w e b 服务中起到的作用。通过实例可以发现,协议栈的 作用就是使众多协议分层协调工作,实现不同w e b 服务在网络中的数据传输,支撑w e b 服务在松散耦合环境中的应用。 2 2w e b 服务核心技术 w 曲服务核心技术包括x m l 、w s d l 、s o a p 、u d d i 等,这些规范都是基于x m l 格 式f 3 s l 。 2 2 1x m l x m l ( e x t e n s i b l em a r k u pl a n g u a g e ,可扩展标注语言) 由s g m l ( s t a n d a r dg e n e r a l i z e d m a r k u pl a n g u a g e ,标准通用标记语言) 发展而来,现在已成为一种人们广泛接受的用 1 3 第一二章w e b 服务弓q o s 于描述数据和创建标记的语言。 数据独立性( 标识与内容相分离) 是x m l 的主要特征。由于x m l 文档只是描述 数据的类型和格式,因此任何理解x m l 的应用程序,不管其编程语言或平台如何,都 可以以各种不同的方式对其解读。 由于具有数据独立性的特点,符合w e b 服务平台无关、松散耦合的要求,x m l 已 成为一种对w e b 服务应用程序之间所传数据进行标识的通用技术。所有采用了x m l 的 应用程序,只要它们能够互相理解对方的x m l 标识,就可以相互通信。这种可互操作 性使x m l 成为w e b 服务所需的最理想的一种技术。这样w e b 服务能在各系统之间进 行通信,而不论其操作系统和硬件平台是否相同,真正具备了传统网络体系结构所不具 备的松散耦合、平台无关和互操作性强等特点【1 3 】【3 。 2 2 2s o a p s o a p ( s i m p l eo b j e c ta c c e s sp r o t o c o l ,简单对象访问协议) 是实现在分散或分布式 坏境中信息交换结构化和类型化的简单协议。其结构如图2 5 。 图2 - 5s o a p 消息协议结构 f i g u r e2 - 5 s o a p m e s s a g es t r u c t u r e s o a p 消息协议包括以下四个方面1 1 4 】: ( 1 ) s o a p 信封:包含了s o a p 消息头部和s o a p 消息体两部分。消息体部分包 含需要传递的消息数据,消息头部提供安全和路由方面的信息。例如上文w r e b 服务实 例中的s o a p 请求消息,要传递给服务端的两个整数1 和2 包含在消息体中: 1 4 中国石油人学( 华东) 顺士学位论文 1 2 ( 2 ) s o a p 编码规则:定义数据编码机制和应用程序中需要使用的数据类型。例 如请求消息中定义数据类型为整形: s o a p m e t h o d n a l n e u r n i n t c o m :i n t # i n t s u m ( 3 ) s o a pr p c 表示:定义了一个用于表示远程过程调用和响应的约定。 ( 4 ) s o a p 绑定:定义了一个使用底层协议来完成在节点之间交换s o a p 消息的 机制。s o a p 消息的传输依靠与传输层的协议进行绑定。例如协议栈实例中s o a p 消息 协议与h t t p 协议的绑定,实现了服务请求消息的传输: p o s t s t r i n g _ s e r v e r o b j e c t l7h t t p i 1 h o s t :2 0 2 1 9 4 1 5 8 i5 5 c o n t e n t t y p e :t e x t x m l c o n t e n t l e n g t h :16 8 s o a p m e t h o d n a n l e :t l l l l i n t e o m :i n t # i n t s u m l 2 2 2 3w s d l w s d l ( w 曲s e r v i c e sd e s c r i p t i o nl a n g u a g e ,w r c b 服务描述语言) 是一种基于x m l 格式的w e b 服务描述性语言,其作用是向服务请求者描述要调用的w e b 服务的具体信 息,包括w e b 服务的位置、功能、调用接口等。 w s d l 是一段x m l 文档,它将w e b 服务定义为服务访问点或端口的集合,方便服 1 5 第二章w e b 服务j o o s 务请求者进行查找操作。w s d l 文档结构如图2 - 6 【i s 】。 图2 - 6w s d l 文档结构 f i g u r e2 - 6 w s d le l e m e n t ss t r u c t u r e 通过2 1 2 的w s d l 实例可以看到,w s d l 文档包含下列元素: ( 1 ) t y p e :定义服务所使用的数据类型。 ( 2 ) m e s s a g e :定义通信消息的数据结构。 ( 3 ) p o r t t y p c :定义服务访问入口的操作。 ( 4 ) b i n d i n g :定义部分操作和消息的具体的数据格式以及规范。 ( 5 ) p o r t :定义服务被访问点。 ( 6 ) s e r v i c e :定义和描述一个w e b 服务。 2 2 4u d d i u d d i ( u n i v e r s a ld e s c r i p t i o nd i s c o v e r yi n t e g r a t i o n ,统一描述、发现和集成) 提供 了一种发布、查找服务的方法,便于服务提供者发布服务以及服务使用者寻找服务。 u d d i 核心是u d d i 商业注册,它使用一个x m l 文档来描述w e b 服务。2 1 2 中的实例 只是列出了其中b u s i n e s s e n t i t y 元素的注册信息,以下是所有注册信息的介绍。 1 6 中困白油大学( 华东) 硕士学位论文 u d d i 信息模型结构如图2 7 1 6 1 。 图2 - u d d i 信息模型结构 f i g u r e2 - 7 s t r u c t u r eo fu d d ii n f o r m a t i o nm o d e l u d d i 数据结构有四类:b u s i n e s s e n t i t y 、b u s i n e s s s e r v i c e 、b i n d i n g t e m p l a t e 、t m o d e l 。 除了上文介绍过的b u s i n e s s e n t i t y 之外,b u s i n e s s s e r v i e e 是将一系列有关商业流程或分类 目录的w e b 服务的描述组合到一起:b i n d i n g t e m p l a t e 是将技术和业务数据绑定到一个 w e b 服务上;而t m o d e l 包含了一个列表,列表的每个子元素分别是一个调用规范的引 用。其中,b u s i n e s s e n t i t y 、b u s i n e s s s e r v i c e 、b i n d i n g t e m p l a t e 之间是层次嵌套关系。可 见,u d d i 注册中心是所有提供公共u d d i 注册服务站点的统称。 2 3q o s 随着、b 服务技术的逐渐成熟和应用,网络中供用户选择的w e b 服务越来越多,用 户如何选取质量最佳的w e b j 艮务,这就需要对其q o s 进行评价。 2 3 10 0 5 定义 对于传统的网络通信来说,q o s 表示网络性能的综

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论