Web 服务采用一系列的相关协议来描述、传递服务和与服务交互。根据其通常的功能和使用,可以将这一系列协议进一步再划分为组。第一组处理消息传递、接口描述、寻址和提供的问题。最有名的是消息传递协议,称为简单对象访问协议(Simple Object Access Protocol,SOAP)。此协议对消息进行了编码,这样就可以通过传输协议(如 HTTP、IIOP、SMTP 或其他协议)在网络上传递它们。
Web 服务描述语言(Web Services Description Language,WSDL)表示为一系列 XML 语句,这些语句组成了每个服务的接口的定义。另一个正在制订的服务是 Web 服务寻址,它定义了如何在分布式体系结构中唯一地进行 Web 服务寻址和标识 Web 服务。另一个流行的规范是 Web 服务调用框架(Web Services Invocation Framework),在这种框架中,您可以定义任何类型的组件的 WSDL 接口,即使它们没有使用相同的消息传递协议。
下一组协议和规范定义了服务如何公开它们自己以及如何在网络上相互发现。对于要相互查找的服务,统一描述、发现和集成(Universal Description, Discovery and Integration,UDDI)为查找和访问服务定义了注册中心和相关的协议。Web 服务检查语言(Web Services Inspection Language)是 UDDI 在不使用注册中心的情况下采用的一种可选的机制。
用于 Web 服务的安全性协议是从 Web 服务安全性(WS-Security)规范开始的,该规范为安全通信定义了基于令牌的体系结构。以此为基础,有六个主要的组成规范:
- Web 服务策略(WS-Policy)和相关的规范,定义了关于服务交互方式的策略规则。
- Web 服务信任(WS-Trust),定义了安全交换的信任模型。
- Web 服务隐私(WS-Privacy),定义了如何维护信息的隐私。
- Web 服务安全会话(WS-Secure Conversation),定义了如何使用在Web 服务策略(WS-Policy)、Web 服务信任(WS-Trust)和 Web 服务隐私(WS-Privacy)中定义的规则,来在用于交换数据的服务之间建立安全会话。
- Web 服务联盟(WS-Federation),定义了分布式标识的规则以及如何对其进行管理。
- Web 服务授权(WS-Authorization),定义了如何处理对访问和交换数据的授权。
在安全性模型之外的是特定于应用程序的规范,其中包括 Web 服务的业务流程执行语言(Business Process Execution Language for Web Services,BPEL4WS),它定义了一起进行分布式事务处理的工作流操作、Web 服务事务(WS-Transaction)、Web 服务协调(WS-Coordination)。
目前计划制订的规范是 Web 服务分布式管理(Web Services Distributed Management),用于对所有的服务和面向服务的体系结构进行软件管理。最后,还有一些用于用户界面(Web 服务交互应用程序(WS-InteractiveApplications))和 Web 服务的远程访问(Web 服务远程门户(WS-RemotePortals))的规范。
在写作本文时,用于 Web 服务的规范还处在不断地制订的过程中,而且它们仅仅是开始解释服务之间应该如何交互。然而,它们无法包括每一种方案和这些方案的可能组合。因此,Web 服务互操作性组(Web Services Interoperability Group,WS-I)的组成成员几乎来自所有从事 Web 服务开发的大大小小的厂商,它已经肩负起开发用况研究、样本应用程序、实现方案和测试工具的重任,目的是确保这些标准和规范能够真正地协同工作,而不考虑厂商的产品实现。
WS-I 已经定义了他们第一个用于 Web 服务的基本概要(Basic Profile 1.0),并且还发布了他们的方案、样本应用程序和测试工具,以便根据方案评估和比较各种实现的结果。
除了 WS-I 之外,Organization for the Advancement of Structured Information Standards (OASIS) 、World Wide Web Consortium (W3C) 和 Internet Engineering Task Force (IETF) 也在进行大量的标准制订工作。
获得更多有关 Web 服务的信息:
|