soap协议(优推4篇)
【导言】此例“soap协议(优推4篇)”的文书资料由阿拉题库网友为您分享整理,以供您学习参考之用,希望这篇资料对您有所帮助,喜欢就复制下载支持吧!
soap协议【第一篇】
论文关键词:异构数据库,XML,WebService
0前言
随着Internet应用的不断普及,Internet上连接着各种类型的数据库系统,形成了大量的信息资源库。由于种种原因,这些信息资源库采用的是不同数据模型的数据库,导致数据共享比较困难,造成了资源很大的浪费。为了共享分布在不同数据库中的信息资源,Internet的异构分布式信息系统正在迅速发展,最终实现不同数据库之间的数据信息资源、硬件设备资源和人力资源的合并和共享,实现数据的共享和透明访问[1][2][6][7]。
1异构数据库和XML的优势
异构数据库
异构数据库系统是相关的多个数据库系统的集合,可以实现数据的共享和透明访问,每个数据库系统在加入异构数据库系统之前本身就已经存在,拥有自己的DMBS。异构数据库的各个组成部分具有自身的自治性,在实现数据共享的同时,每个数据库系统仍保有自己的应用特性、完整性控制和安全性控制。异构数据库系统的异构性主要体现在以下几个方面:
(1)计算机体系结构的异构,(2)各个参与的数据库可以分别运行在大型机、小型机、工作站、PC或嵌入式系统中,(3)基础操作系统的异构,各个数据库系统的基础操作系统可以是Unix、WindowsNT、 Linux等,(4)DMBS本身的异构。所以异构数据库可以是同为关系型数据库系统的Oracle、 SQL Server等,也可以是不同数据模型的数据库,如关系、模式、层次、网络、面向对象,函数型数据库等共同组成一个异构数据库系统[6][7]。
XML技术优势
XML是世界互联网协会(World W)(ide WebConsortium,WSC)于1998年2月颁布。由于XML源自标准通用标记语言SGML,XML作为一种可扩展的标记语言,目前已成为信息描述的事实标准。XML与其他语言相比,具有明显的优势,表现在以下四个方面:①XML可以从HTML中分离数据,通过XML,可以在HTML文件之外存储数据。②XML用于交换数据,通过XML,我们可以在不兼容的系统之间交换数据,将大大减少交换数据时的复杂性,并且还可以使得这些数据能被不同的程序读取。③XML可以用于共享数据,通过XML,纯文本文件可以用来共享数据。XML也可以用于存储数据,利用XML纯文本文件可以用来存储数据。大量的数据可以存储到XML文件中或者数据库中。应用程序可以读写和存储数据。④XML可以充分利用数据,XML是与软件、硬件和应用程序无关的,所以可以使你的数据可以被更多的用户、更多的设备所利用[2][3][4]。
基于XML的优势,下一代的XML数据库目前是研究的前沿,但由于很多标准还在制定中,而且XML读取效率较低,所以目前没有大规模应用。
优势
WebService主要是为了使原来各孤立的站点之间的信息能够相互通信、共享而提出的一种接口。 Web Service所使用的是Internet上统一、开放的标准,如HTTP、XML、SOAP(简单对象访问协议)、WSDL等,所以Web Service可以在任何支持这些标准的环境(Windows、Linux)中使用。SOAP协议(Simple Object Access Protocal简单对象访问协议),它是一个用于分散和分布式环境下网络信息交换的基于XML的通讯协议。在SOAP议下,软件组件或应用程序能够通过标准的HTTP协议进行通讯。它的设计目标就是简单性和扩展性,这有助于大量异构程序和平台之间的互操作性,从而使存在的应用程序能够被广泛的用户访问[3]。所以Web Service一旦部署以后,其他Web Service应用程序可以发现并调用它部署的服务。
2实现过程
原理和开发环境
基于上述XML和WebService的技术优势,可以把不同结构的数据库中的数据,转换成XML结构的数据,通过HTTP协议在网络中传输,接收方可以把收到的XML数据进行转换,转换成其他方式的数据。这样,在异构数据系统中实现了数据的透明访问,用户就可以将异构分布式数据库系统看成普通的分布式数据库系统,用自己熟悉的数据处理语言去访问数据库,如同访问一个数据库系统一样。
软件开发环境,设置了两台服务器,一台安装Linux和Oracle10g,另一台安装Windows2003和SQL 2005,在Oracle和SQL 2005数据库中分别建立一张表DishMenu,两张表具有相同的结构,其中Oracle10g上的有数据,SQL2005上的是空表。另外还设置了一台编程工作站,使用vs 2008为编程工具。
WebService编程
访问Linux和Oracle平台
打开VS2008,建立一个WebService项目DishOrder,并在文件中配置连接字符串为“Data Source=Linux-Oracle; Initial Catalog=DishDB; IntegratedSecurity=True”,表明Linux主机名为Linux-Oracle,建立的Oracle数据库为DishDB。建立一个WebService服务接口,代码如下:
[WebMethod]
publicDataTable GetDataView(string sql)
{
SqlCommand sqlcomm = new SqlCommand(sql, conn);
();//打开数据库连接
SqlDataReader dr = ();//执行SQL语句
DataTable table = new DataTable();
(dr);
return table; //返回结果类型为Table
}
程序运行过程中,输入要执行的SQL语句:SELECT* FROM DishMenu where price = 12,作为GetDataView的参数,如图1所示:
相应的SOAP协议表现为:
SOAP
soap协议【第二篇】
关键词:PKI,身份认证,WebServices,安全
0 引 言
随着互联网的不断壮大,越来越多的企业将自身的应用搬上网络,它们为企业争取了更多的客户,把握了更多的商机,获取了更多的利润。然而由于现有的应用系统开发模式及结构存在很大差异,这就使得企业与企业之间,企业内部部门之间的交互和协作变得越来越复杂。随着Web Services[1]技术的发展和广泛应用,其高效集成性、松散松散耦合性和实现简单等特点使得互操作和集成问题从层次上被简化。
Web Services是一套标准协议,它规定了应用程序如何在Web上实现互操作性,你可以使用任何一种编程语言,在任何一种平台上编写 Web Services。现在普遍应用的是通过HTTP请求发送SOAP[2] 消息,然后接收HTTP应答中包含的消息。由于SOAP消息是通过HTTP方式进行,所以其可以穿越大多数的防火墙,进行数据交换。
对于SOAP消息的机密性和完整性,普遍的做法是使用加密和签名,采用非对称秘钥理论,通过加密来保障消息的机密性,通过签名来保障消息的完整性;对于完善的用户身份认证机制,PKI[3]系统提供了有力的保障,它能够为用户颁发公私钥证书,通过公钥来明确用户的身份,用户在发送了签名过的SOAP消息时,己经表明了自己的身份,也无法抵赖,而且PKI系统与非对称秘钥理论完美的结合,通过私钥来对消息进行加密,通过公钥来对消息进行签名。有效地保障Web Services的安全。
1 WebServices的体系结构
Web Services体系结构是面向对象分析与设计的一种合理发展,同时也是电子商务解决方案中,面向体系结构、设计、实现与部署而采用的组件化的合理选择。这两种方式在复杂的大型系统中经受住了考验。和面向对象系统一样,封装、消息传递、动态绑定、服务描述和查询也是Web Services中的基本概念,而且, Web Services另外一个基本概念就是:所有东西都是服务,这些服务一个API供网络中的其他服务使用,并且封装了实现细节。
Web Services的体系结构是基于Web Services服务提供者、Web Services服务请求者、Web Services服务注册的不同操作来建立的。具体的Web Services体系结构模型如图1-1所示。
(1) Web服务提供者:Web服务的拥有者,它为其它服务和用户提供服务功能,服务提供者在实现服务之后可以服务,并且响应对于服务的调用请求;
(2) Web服务请求者:Web服务的使用者,它可以利用服务注册查找服务;
(3) Web服务注册:它的作用是将服务请求者与合适的服务提供者绑定在一起;
这三种不同的角色通过(publish )、查找(find )、绑定( bind )三种操作提供完整的Web Services功能。论文参考。Web Services是由服务描述所表达的接口,其接口的实现即为服务。服务和服务描述是支持Web服务的基本工件。服务在本质上是软件模块,它由服务提供者提供,部署在网络可访问的平台上。[4]
图1-1 Web Services体系结构示意图
2基于PKI的Web Services安全模型设计
整体框架图
Web Services在异构的分布式的环境下,对客户的身份认证就比较困难,当你去调用一个企业的Web Services时,这个企业Web Services可能又会去调用另一个企业Web Services如何在这种跨域的环境下实现Web Services的身份认证,
PKI公钥基础设施能够使计算机用户在无需事先协商的情况下,互相验证对方的身份[5],这对于Web Services下的身份认证提供了解决方法。我们的Web Services身份认证模型就是基于PKI完成的,如图2-1所示。客户端和服务器端都通过PKI系统来获取对方的公钥证书,通过PKI系统来检验公钥证书的有效性,并通过公钥证书来验证对方的身份。
图2-1基于PKI的Web Services身份认证模型
系统设计
下面我们来具体介绍一下基于PKI的Web Services身份认证模型的运行流程。首先,我们做一些假设:
符号C表示Web Services的客户端;符号S表示Web Services的服务器端;符号M表示明文的SOAP消息;符号Dx(M)表示使用用户x的私钥对SOAP消息进行签名后的结果;符号Ex(M)表示使用用户x的公钥对SOAP消息进行加密后的结果。我们的Web Services身份认证流程是这样的:首先,我们的Web Services身份认证模型捕获客户端的SOAP请求消息M;接着,我们从PKI系统中获取服务器端的公钥Es,并用服务器端的公钥对SOAP消息进行加密,得到加密后的SOAP消息,Es(M);然后,我们使用客户端的私钥Dc,对SOAP消息进行签名,得到签名后的SOAP消息,Dc(Es(M));最后,我们将加密和签名的SOAP消息发送到Internet上。如图2-2所示。
图2-2发送SOAP请求消息
而在服务器端,我们的Web Services身份认证模型接收到客户短发送过来的加密、签名过的SOAP消息。首先,我们去PKI系统获取客户端的公钥Ec,并用客户端的公钥对SOAP消息进行签名验证,确认这个SOAP消息确实是这个客户发送过来的,并得到SOAP消息Ec(Dc(Es(M))) =Es(M);接着,我们使用服务器端的私钥Ds,对SOAP消息进行解密,得到明文SOAP消息Ds(Es(M))=M,最后,我们把这个明文SOAP消息发送给Web Services服务器,由Web Services服务器进行处理。如图2-3所示。同样地,如果需要的话,我们可以对Web Services处理过的SOAP应答消息做同样地安全处理。论文参考。
图2-3接收SOAP请求消息
3 结束语
随着Web Services的广泛使用,其明文传输消息的缺点制约了Web Services在企业级应用中的发展。论文参考。作为企业应用,必须保证的安全性有:消息的机密性,完整性,身份认证和权限控制,企业级的Web Services应用也必须要满足以上四点安全保障。而PKI是目前公认的解决大规模、分布式开放网络环境下信息安全问题最可行、有效的方法, 利用PKI技术可以方便地建立和维护一个可信的网络计算环境,保证Web Services有效、安全地进行。
参考文献:
[1] 胡方霞,曾一,高旻。Web Services 技术应用与探讨[J].计算机科学,2007,43(3):75-77.
[2] Pullen M J, Bruntlon Web services to integrate heterogeneous simulations in a gridenvironment[J]. Future Generation Computer Systems, 2004(9):98一99.
[3] Stefanos GritzalisPublic key infrastructure research and applications[ J].International Journal of Information Security Archive, 2006,5(1):1-2
[4] Bret Hartman,Donald 杨硕译。全面掌握Web服务安全性。清华大学出版社。2004
[5J Zhang Mu, ZhangShunyi On the optin almulti-rate throughput formulticast withnetwork coding[J]. Journal of Electronics, 2006,23( 4): 584-589
soap协议【第三篇】
关键词:.net框架;Web服务;Web服务协议栈;SOAP
中图分类号:G712 文献标识码:B 文章编号:1002-7661(2013)33-036-01
第一代WEB应用只是静态网页,人们和网络无法进行交互。CGI、ASP的出现,把人们带到第二代WEB。使人们不仅可以浏览网上丰富的网页资源,还可以在网上自己的信息,比如电子公告牌。
Microsoft公司2000年宣布的。Net的伟大计划,把人们带入了第三代WEB。它的目标是要实现跨平台无缝衔接,实现这个目标的关键技术就是Web服务。WEB服务给WEB注入了新的活力,它完全屏蔽了不同平台之间的差异,人们可以跨平台来进行电子商务了。
一、Net技术概述
2000年6月,MICROSOFT公司宣布。NET战略,将WEB带入一个全新的时代。具体地说就是将软件作为服务。.NET将现有的相互隔绝的网络应用程序编织成一张真正的下一代互联网,让人们随时利用任何设备获取信息成为可能。
二 .Net框架
在。NET框架中,所有程序都是运行在通用运行语言CRL之上。CRL是。NET的的运行环境,它为运行在。NET框架上的一切程序提供一个统一的运行环境。
在CRL中运行的程序都转化成中间语言CIL,使用什么语言来编写程序已经不重要了,.NET支持25种编程语言,它完全屏蔽了语言差异,可以说它支持那么多种编程语言完全是为了程序员的编程习惯。
三、Web服务技术
1、Web服务技术的基石――可扩展标记语言XML
作为WEB服务的基础的XML语言一开始并不是为WEB服务来设计的,其开始设计的主要目的是为了弥补HTML作为网络标准语言的不足。HTML有着超凡的界面表现能力,但是并不能用来表示数据,而XML正好弥补了这一不足,迅速成为处理网络数据的通用方法。XML的主要特点有:自描述性、可扩展性、分层结构 、内容与形式分离。
2、Web服务的概念
WEB服务就是部署在Internet/Intranet上的组件。人们传统编程模式都是调用本地的组件来完成应用程序的开发,例如WINDOWS环境下的COM控件APIDLL等,当程序员需要用哪个组件的时候本地必须有这个组件。而到了WEB服务时代,人们可以调用Internet上的组件---WEB服务,而且有很多公司已经在internet上提供了一些WEB服务。
比如,汽车维修的过程是,司机通知维修公司汽车故障的信息,包括故障地点,故障原因,然后维修公司根据司机提供的信息来计算维修费用和应该更换零件费用,计算出费用后,汽车公司又通知司机通过银行付款,等付款后,维修公司买零件并到汽车地点进行维修。
用传统的电子商务手段非常麻烦,但如果用WEB服务问题就可以调用美国一家公司的精确全球定位WEB服务得到自己精确的地点,然后把故障信息和精确地点通过汽车维修公司的WEB服务传递给维修公司,维修公司WEB服务终端通过WEB服务得到的汽车故障信息,然后通过零配件公司提供的WEB服务得到零件价格,并返回给司机终端,司机通过银行的WEB服务来支付维修费用,维修公司通过银行的WEB服务得到付款通知后派维修人员到故障地点维修。整个过程都是通过WEB服务来进行,只要各方都有支持WEB服务终端,相信不久所有终端都会支持WEB服务的。
3、Web服务协议栈
WEB服务技术体系主要技术规范有:简单对象访问协议SOAP;WEB服务描述语言WSDL;WEB服务统一注册,描述发现和组合UDDI;WEB服务工作流描述语言WSFL。
(1)简单对象访问协议SOAP
SOAP是WEB服务栈MESSAGING层的标准,SOAP为在一个松散,分布的环境中使用XML对等的交换结构化和类型化的信息提供了一个简单而且轻量级的机制。
SOAP设计的主要目标是简明性和可扩展性,一个SOAP消息主要定义在一个SOAP信封中。SOAP消息是用XML来编码,在WEB服务的调用过程中在网络上传输的就是SOAP数据。
(2)Web服务描述语言WSDL
WSDL是使用XML来描述WEB服务,是以一种结构化的方式来对WEB服务调用和通信加以描述,他定义了一套基于XML的语法。
(3)统一注册、描述与集成UDDI
跟网页资源一样,需要使用某一个WEB服务也必须知道该WEB服务在网络上的位置。WEB服务注册中心就担任这个责任,它向外界提供一个注册接口,所有的WEB服务提供商都可以免费将符合标准的WEB服务注册到该注册中心,并且WEB服务注册中心会按照一定的方式来组织注册过的WEB服务。
在WEB服务注册中心注册的WEB服务主要包含:白页、黄页、绿页用户通过这些信息就可以调用WEB服务了,当然这些信息可能并不完善,但是UDDI是一个发展中的协议,它对WEB服务的描述会越来越完善。
soap协议【第四篇】
关键词:WSDL;XML;SOAP;Web Service;HTTP
中图分类号:TP393文献标识码:A文章编号:1009-3044(2007)17-31257-02
Study Of Web Service Technology
SHENG Hong-yan
(Institute of Physics & Electronic Engineering,Ludong University,Yantai 264025,China)
Abstract:This paper discusses relative technologies and standards of Web Service, and enters into the system framework, applied fields and further development of Web Service.
Key words:WSDL;XML;SOAP;Web Service;HTTP
1 引言
Web Service 使用标准技术,通过它,应用程序资源在各网络上均可用。因为 Web Service 基于标准接口,所以各应用程序即使是以不同的语言编写并且在不同的操作系统上运行,它们也可以进行通信[1]。因此,Web Service 是生成适用于网络上不同系统的分布式应用程序的极好方法。
2 标准技术
Web Service 使用的标准技术包括:公开描述其自身功能的WSDL 文件;与其他应用程序进行通信的XML消息(通常使用 SOAP 格式);标准网络协议HTTP。
文件
Web Service 描述语言 (Web Service Description Language,简称 WSDL) 使用标准 XML 格式描述 Web Service的接口信息。通过描述,客户端可以了解Web Service 的功能,而无需知道 Web Service 的实现细节。如果某个 Web Service 将英语句子翻译成中文,则其 WSDL 文件将说明应该如何将英语句子发送到此 Web Service,以及中文译文将以那种数据类型以及如何返回到请求的客户端。
WSDL 文件包含了客户端调用 Web Service方法所必需的所有信息:
(1)方法参数和返回值的数据类型
(2)单个的方法名和签名(WSDL 将方法称为“操作”)
(3)每个方法可以使用的协议和消息格式
(4)用来访问 Web Service 的 URL
另外,通过公共和专用的 UDDI(Universal Description, Discovery and Integration通用描述,发现和集成)注册表可以找到 WSDL 文件[2]。
XML和SOAP
XML概述
可扩展标记语言(Extensible Markup Language,简称 XML)提供了一种公共语言,通过它,不同的应用程序可以在网络上彼此进行交互。大多数 Web Service 通过 XML 进行通信。客户端将包含请求的 XML 消息发送到 Web Service提供商那里,然后 Web Service提供商使用包含操作结果的 XML 消息进行响应。大多数情况下,这些 XML 消息将根据 SOAP 语法设置格式。
SOAP概述
Simple Object Access Protocol (SOAP) 指定了一种标准格式,使应用程序可以调用彼此的方法,在彼此之间传递数据。请注意,Web Service 可以使用非 SOAP 格式的 XML 消息进行通信。特定的 Web Service 支持的消息类型在其 WSDL 文件中进行描述。
网络协议
Web Service 利用广泛使用的协议,如超文本传输协议(HyperText Transfer Protocol,简称 HTTP)和 Java 消息服务(Java Message Service,简称 JMS),接收请求并发送响应。Web Service 可以支持多个协议,它的不同方法可以支持不同的协议[3]。Web Service 支持的协议在 WSDL 文件中进行。
3 Web Service 体系结构
图1显示了 Web Service、其客户端软件应用程序及其使用的资源(包括数据库、其他 Web Service 等)之间的关系。Web Service 通过使用标准协议(如 HTTP)交换 XML 消息来与客户端和各种资源进行通信。
图1 Web Service体系结构
4 Web Service的应用
在电子商务中的应用
Web Service已经得到了广泛的认同,可视为是电子商务发展的下一个阶段。它把一切都看作服务,这种服务可以在网络上动态地被发现和组织。利用Web Service的动态特性,企业可以通过自己的 Web Service来动态地出售它们的服务或者调整其应用和业务流程,在市场上抢得先机。
动态电子商务是一种新的企业对企业(B2B)的交易模式。而推动动态电子商务发展的关键是Web Service。目前一些大的平台提供商已经实现了全方位支持动态电子商务所需要的开放标准,从而使企业可以创建、、安全地部署、拥有和管理Web Service。
其他方面的应用
除了Web Service的直接使用以外,在对等 (P2P) 计算领域中,它还有许多精彩的应用。例如,一个 eBay 的 P2P 版本。消费者将一个简单的拍卖 Web Service安装到他们的家庭计算机或智能电话上,一旦告诉了拍卖服务您的买卖意向后,它就与世界范围内的其它拍卖服务联系,帮您找到适当的买家和卖家。交易在消费者的设备之间直接发生,不需要任何服务器。
一个更大胆的想法是 P2P电话蜂窝网络,它使用其它中间消费者的电话,而不是基站,进行通信。当您拨打电话时,通话沿着相邻的蜂窝电话进行路由,到达它的最终目的地。使用这种体系结构,从理论上说,将1万个蜂窝电话投放到某一区域中,就可以立即在不使用基站或其它传统电话网络基础设施的情况下拨打电话!
5 Web Service的未来发展
完善标准
Web Service所依托的关键技术XML,提供了用于定义Web文档标记(即描述文档不同部分的要素)和标记之间关系的专用词汇。数据交换各方的开发人员可以在使用通用标记集合上达成一致。因此,XML具有无与伦比的灵活性和通用性。但它还不是一种很好标准化的技术,由于每次XML传送包括大量的说明信息,文件长度会迅速膨胀。目前像W3C等业内企业正致力于对XML数据发展标准的定义。
安全和可靠性
Web Service安全方面的标准仍然还在完善的过程中。它缺乏事务完整性、安全、数据队列、多数据格式支持等基础部件,不能支持Web的可扩展性以及处理混和的XML语句等[4]。这些问题都急需解决。
6 结束语
Web Service是一种非常有效的工具,它使我们能够通过互联网为我们的合作伙伴和客户提供非专有的、开放的服务和数据访问。它在现有企业网络站点和Internet基础上,通过对原有网络通信协议(HTTP/SMTP)及XML的封装,提供集成的分布式网络模式,为新型的电子商务发展提供了依托。 Web Service的应用无论对Internet还是对电子商务都将带来革命性的变化。
参考文献:
[1]Ethan Cerami(美).Web Services 'Reilly,2003,5.