客户机Web服务访问的制作方法

文档序号:7576549阅读:212来源:国知局
专利名称:客户机Web服务访问的制作方法
技术领域
本发明涉及对Web服务的客户机访问,更具体地说,本发明涉及来自Web客户机对Web服务的访问的请求的处理。
背景技术
最近几年,Web服务已变得十分流行,例如,提供Web服务的商家能够使Web客户机在Internet上从该商家购买货物。继Web服务的这一成功,人们对Internet的使用日益增加,而且对Web客户机和Web商务的需求日趋复杂。从而,导致了中间件的提供,中间件的提供可使客户机以新的和更好的方式访问Web服务,而且也可使商家以新的和更好的方式实现Web服务。
例如,服务总线为Web服务提供了一种可灵活控制的基础结构。通常,在服务总线中操作的客户机与Web服务提供商使用一种连接到服务总线的智能客户机“客户机端入站”,从而可以把背景和其它环境信息添加到客户机/Web服务交互过程,因此,例如,可以根据Web服务及其客户机的要求,正确地处理安全、交易以及其它处理。另外,还将允许以可管理的方式进行服务的选择与发现,以致于当客户机希望访问某一Web服务时,能够使用一个基于客户机所需功能所找到的Web服务。例如,客户机可以请求销售IBM计算机设备的Web服务在英国交货,并且接受通过American Express的付款方式。申请号10/322053、名为“Apparatus and method for selecting a web servicein response to a request from a client device”、发明者为Flurry和Holdsworth的美国专利申请中公开了这样一种智能客户机“客户机端入站”和Web服务总线结构。
然而,服务总线环境中的某些客户机或Web服务可能不知道总线基础结构,例如,客户机可能是特定硬件编码以便用特定的URL和格式来访问Web服务的.NET、C、或Python/Perl/javaScript SOAP客户机,而客户机难以对.NET、C、或Python/Perl/javaScript SOAP进行编码,以使用某一特定的URL以及对它们进行格式化,以访问Web服务。另外,这些客户机也不能使用专门用于访问服务总线基础结构的应用程序接口(API),例如Web ServicesInvocation Framework(WSIF)或Java JSR 109编程模型(可从Java Community,Process Web网点获得)(Java是Sun Microsystems公司的一个商标)来编写。通常,为了服务总线处理来自这样的客户机的请求,把该客户机请求转发至一个集线器中介或网关,以由服务总线加以处理。例如,作为Web服务的提供商,公布一个网关,当收到客户机请求时,可以把该请求路由到一个以可管理的方式所发现和所选择的适当的Web服务提供商,这一可管理的方式也将用于可察觉服务总线(service bus sensitive)的客户机。然而,这将要求可对客户机进行更新,以把客户机请求中所指定的URL改变为集线器中介的URL。然而在某些场景下,不能够以这一方式对客户机进行更新。而且,这一中介可能不能够执行那些仅可由客户机执行的动作,例如把客户机专用信息添加到请求中。

发明内容
因此,根据第一方面,本发明为客户机数据处理主机提供了一种转换来自Web客户机请求的客户机数据处理方法,该方法包括拦截请求;把请求中所指定的一个第一Web服务实现改变为一个第二Web服务实现;以及把请求转发到第二Web服务实现,从而可使第二Web服务实现处理该请求,其中,基于与Web客户机相关的策略数据选择第二Web服务实现。
根据第二方面,本发明提供了一种用于转换来自Web客户机请求的客户机数据处理设备,该设备包括用于拦截请求的装置;用于把请求中所指定的一个第一Web服务实现改变为一个第二Web服务实现的装置;以及用于把该请求转发到第二Web服务实现,从而可使第二Web服务实现处理该请求的装置,其中,基于与Web客户机相关的策略数据选择第二Web服务实现。
根据第三方面,本发明提供了一种计算机程序产品,该计算机程序产品包括指令,当在数据处理主机上执行这些指令时,可使数据处理主机执行一个根据第一方面的方法。
因此,本发明使得能够在客户机实现中拦截用于特定Web服务的客户机请求,并且能够以可管理的方式将该请求转换成对于和已选择的Web服务不同的Web服务的一个请求。例如,策略数据可以为Web客户机指定具体的服务质量要求,从而可访问和Web客户机服务质量要求更加匹配的Web服务。
可以在应用层协议,例如在基于超文本传输协议的简单对象访问协议(SOAP/HTTP)、基于因特网的ORB间协议(IIOP)或基于Java消息服务(JMS)的SOAP中指定Web客户机请求。作为选项,也可以把请求进一步修改为其中指定了Web客户机请求的不同的应用层协议。例如,可以将其从SOAP/HTTP请求改变至IIOP请求。
存在着关于如何拦截请求的多种替代。作为选项,如果客户机数据处理主机的协议堆栈包括对SOCKS的支持,则可以使用对客户机来说是本地的SOCKS代理对SOCKS支持进行配置,而且当协议堆栈正在处理请求时,可以通过调用SOCKS代理进入拦截请求的步骤。作为选项,如果客户机数据处理主机的协议堆栈包括对HTTP的支持,则可以支持具有HTTP代理的配置,在这种情况下,对请求的拦截可以通过调用一个本地HTTP代理来产生。作为替代,也可以把协议堆栈修改为在处理过程中请求拦截和调用一个用于使得能够改变请求步骤的例程。
优选的做法是,为了选择一个第二Web服务实现,发现一或多个处理请求的替代Web服务实现,然后,例如,基于所公布的策略数据,使用Web服务策略(Web Services Policy)框架(WS-Policy),从这些所发现的Web服务实现中选择第二Web服务实现。
作为选项,可以通过获得针对第一Web服务实现的Web服务定义语言(Web Services Definition Language(WSDL))文档,发现该一或多个可选Web服务实现,并且使用来自这一WSDL文档的信息,获得针对一或多个可选Web服务实现中每一可选Web服务实现的一个WSDL文档,以处理该请求。
作为选项,可以把一个安全策略应用于请求。例如,如使用Web服务安全协议(Web Services Security Protocol(WS-Security))或其它信息加以指示的,可以至少对请求的一部分进行加密,和/或可以把一个客户机密钥添加到该请求,和/或基于请求的安全属性选择用于发送请求的传输机制。例如,客户机密钥可以为一个诸如客户机标识符或用户标识符的标识符。例如,客户机密钥还可以包括口令。
作为选项,也可以把例如,客户机数据处理主机的一个客户机密钥、一个机器标识符、和/或客户机数据处理主机的一个IP地址的客户机专用信息添加到请求。例如,Web服务实现可以把这样的信息用于审计或安全目的。
例如,策略数据可以指定下列一或多种情况响应时间要求、安全水平要求、交易要求、开销要求、可用性要求、应用层协议要求、附加信息要求、以及Web服务实现要求。


现在,将参照附图中所说明的本发明的优先实施例,仅以举例的方式,描述本发明。在这些附图中图1是其中有利于应用本发明的优选实施例的一个数据处理环境的结构图;图2是一个示意图,描述了从一个客户机进程向一个根据现有技术的Web服务发送一个请求的Web客户机的实例;图3是一个示意图,描述了从一个客户机进程向一个根据本发明的优选实施例的Web服务发送一个请求的Web客户机的实例;图4是处理源于一个Web客户机的请求的图3的客户机端入站的一个示意图;图5是图3的一个客户机数据处理主机的主要处理步骤的流程图;以及图6是图3的客户机端入站的主要处理步骤的一个流程图。
注意,在这些图中,使用相同的数字表示相同的部件。
具体实施例方式
图1是其中可有利地应用本发明的优选实施例的一个数据处理环境的示意图。在图1中,经由网络11,例如网络11可以为Internet,把一个客户机/服务器数据处理主机10连接到其它客户机/服务器数据处理主机12和13。例如,根据本发明,一个运行在主机10上的Web客户机可以向主机12中的一个可用Web服务发出请求,但运行在该客户机中的软件把该请求转换为到基于与该Web客户机相关的一个策略数据所选择的主机13中的一个Web服务的请求。客户机/服务器10具有一个用于执行程序的处理器101,这些程序控制客户机/服务器10、RAM易失性存储器元件102、非易失存储器103以及用于与网络11连接以与其它客户机/服务器12和13进行通信的网络连接器104的操作。
图2是一个示意图,示出了根据现有技术向Web服务实现211发送一个请求208的Web客户机201的示例。Web客户机和Web服务分别运行在数据处理主机200和210中,各使用一个TCP/IP协议堆栈。
在图2中,Web客户机请求指向URL http//www.banka.com/(209)处的一个银行服务的银行服务业务。Web客户机201把该请求传递(205)给协议堆栈的应用层202。该应用层提供了高级协议,例如,通过该高级协议,Web客户机/服务可以访问TCP/IP协议堆栈,在这一示例中,应用层提供了基于超文本传输协议(Hypertext Transfer Protocol(HTTP))的简单对象访问协议(Simple Object Access Protocol(SOAP))。作为选择,例如,应用层也可以提供因特网ORB间协议(Internet Inter-Orb Protocol(IIOP))。应用层202修改请求,然后将其传递(206)到传输与网络层203。传输与网络层提供网络上的数据传送,在这一示例中,这一层提供了对基于因特网协议(IP)的传输控制协议(TCP)的支持。作为替代,例如,传输与网络层也可以提供用户数据报协议(User Datagram Protocol(UDP))。然后,传输与网络层203可以修改请求,并且将其传递(207)给网络接口层204,网络接口层204与客户机硬件接合,并且在网络11上传输请求208。
当请求到达Web服务实现的主机210时,通过网络接口层214接收这一请求,网络接口层214把请求传递(215)给提供了TCP/IP支持的传输与网络层213。该传输与网络层撤销客户机网络与传输层中对消息所做的改变,然后将其传递(216)给提供了SOAP/HTTP支持的应用层212。接下来,应用层撤销客户机应用层中对请求所做的改变,并且将其传递(217)给目标Web服务实现211。从而,接收了请求用于处理。注意,为了成功地处理Web客户机请求,Web服务协议堆栈必须提供对和用于客户机堆栈的相同协议(即SOAP/HTTP和TCP/IP)的支持。
然而,图2的现有技术的一个问题是,Web客户机是使用其请求所指向的Web服务实现的URL(http//www.banka.com)来进行硬件编码的。因此,例如,客户机不能利用可基于与Web客户机相关的策略数据选择一个Web服务实现来处理该请求的服务总线。
图3是已根据发明的优选实施例对其加以修改的图2的客户机数据处理主机的一个示意图。在这一实施例中,TCP/IP层还包括对SOCKS的支持305。在正常使用的情况下,对SOCKS进行配置,以把一个Web客户机请求重新路由到一个SOCKS代理(或服务器),然后,在允许Web客户机请求前进到请求中所指定的目标之前,SOCKS代理执行某一级别的安全检查。然而,根据本发明的优选实施例,对SOCKS支持305进行配置,以把一个Web客户机请求重新路由到一个适当的对客户机来说是本地的SOCKS代理306。因此,当把Web客户机请求传递给TCP/IP传输与网络层203时,调用SOCKS支持305,这把请求重新指向(322)对于客户机来说适用于本地的SOCKS代理306,接下来,适用于本地的SOCKS代理306把请求传递(323)到一个URL过滤器307。该URL过滤器使用配置文件检查被指定为Web客户机请求的目标的URL,其中,该配置文件包括用于决定被指定为Web客户机请求的目标是否适合于修改的细节。例如,配置文件可以包含要求为严格匹配的特定URL的一个列表,或要求其为类似匹配的包含通配符的URL的一个列表。如果URL不适合于修改,则把Web客户机请求返回(未示出)到TCP/IP传输与网络层203,以进行正常处理。然而,如果URL适合于修改,则把请求传递(324)到SOAP/HTTP句法分析器308,SOAP/HTTP句法分析器308可以提取信息,例如,任何伴随Web客户机请求中的URL的数据。在已经提取了所需的信息之后,把请求传递(325)到客户机端入站309,然后客户机端入站309修改该请求使其适合于传递到使用各种协议提供了对各种Web服务实现访问的一个服务总线。根据图3的优选实施例,可用于客户机的服务总线,提供了对使用了IIOP 310和SOCKS代理311这两种协议组合之一的Web服务实现的访问,客户机端入站修改Web客户机请求,使其要求经由服务总线可用的、并使用一个IIOP请求的替代Web服务实现。因此,客户机端入站309把对该替代Web服务实现的请求传递(326)到IIOP应用层310,然后IIOP应用层310把其传递(327)给TCP/IP传输与网络层203,以通过网络接口层204传递(328)给网络,以在网络上发送。
图4是图3的客户机端入站以及与其接口的各部件,即服务总线的SOAP/HTTP句法分析器308、SOAP/HTTP 310与IIOP 311应用层的一个更详细的示意图。把Web客户机请求从SOAP/HTTP句法分析器传递给客户机端入站309的一个匹配引擎401。匹配引擎查找策略文件402中针对Web客户机所指定的策略。例如,策略文件可以包括针对响应时间要求、安全水平要求、交易要求、开销要求、可得性要求、应用层协议要求、附加信息要求、和/或Web服务实现要求的客户机的细节。然后,匹配引擎利用SOAP/HTTP句法分析器从Web客户机请求所抽取的策略信息和请求信息,使用发现机制403、选择机制404以及安全405机制,修改请求。发现机制403用于发现可用于服务总线上的可选Web服务实现,并且能够处理Web客户机请求,例如根据请求中所指定的URL处理Web客户机请求。然后,把选择机制404用于从所发现的Web服务实现中选择一个特定的Web服务实现。所选择的那个Web服务实现将与策略文件中所指定的要求密切匹配。选择机制还可以从服务总线中可用的协议中选择一个合适的协议,并且把这一适合的协议用于访问Web服务实现。安全机制405也可用于选择目的,例如,选择与客户机或Web服务的安全要求相匹配的一个适合的协议。例如,客户机或Web服务实现可以要求通过一个更安全的协议,例如基于SOAP的WS-Security、安全HTTP(HTTPS)、或安全IIOP(IIOPS)的通信,另外,例如,安全机制还可以基于Web客户机或Web服务实现的安全要求,使用SOAP加密对消息进行加密,和/或向诸如客户机请求添加信息,例如客户机密钥。在这一优选实施例中,由于使用了这些机制,匹配引擎401选择一个适当的Web服务处理Web客户机请求,并且将其提供给适当的传输协议,例如分别用311和310表示的SOAP/HTTP或IIOP,。
注意,例如,策略文件可以包含下列一或多个内容响应时间要求,其要求使用给出一段确保的响应时间的一个较快的传输协议或Web服务;安全水平要求,其要求对请求进行加密,或者使用一种安全策略,例如HTTP;开销要求,其指定Web服务所提供的货物的最大价格范围,或对一个提供最低开销连接的通信协议的使用;可用性要求,其要求使用提供了24×7可用的Web服务,或使用可确保请求的递送的协议,例如使用可进行交易的JMS;应用层协议要求,其指定必须用于或必须不用于发送请求的一或多个应用层协议;附加信息要求,其要求将客户机数据处理主机的一个IP地址和/或机器标识符添加到该请求;以及Web服务实现要求,例如其要求接受AmericanExpress支付方式的IBM批准的经销商或美国经销商所提供的一个Web服务实现。
至此,已经描述了其中拦截和转换了一个Web客户机请求的本发明的一个优选实施例。请求的转换包括改变向其发送请求的Web服务,并且有选择地改变诸如用于发送请求的应用层协议、用于请求的安全策略、或添加到请求的信息等。然而,存在着很多可替代所描述的实施例的替代实施例。
例如,参照图3,在所描述的实施例中,Web客户机使用了SOAP/HTTP应用层202。然而,在一个替代实施例中,例如,其可以为IIOP、IIOPS、HTTP、HTTPS、基于JMS的SOAP、基于IIOP上的远程方法调用(RMI)、基于Java消息服务(JMS)的XML、基于简单邮件传输协议(SMTP)的SOAP、或企业Java Beans(EJB)(Java Beans为Sun MicroSystem的一个注册商标)。例如,如果应用层为IIOP。则将以IIOP句法分析器取代SOAP/HTTP句法分析器308。
另外,例如,参照图3,在所描述的实施例中,由SOCKS支持305在传输与网络层203中拦截Web客户机请求。然而,在一个替代实施例中,可以由不同的装置实现这一拦截。例如,可以对HTTP层进行配置,以调用一个本地HTTP代理,从而能够以该HTTP代理取代SOCKS服务器306,并且把对Web客户机请求的拦截改变至SOCK/HTTP应用层(202)中。
另外,例如,参照图3,在所描述的实施例中,客户机端入站309能够使用一个提供了用于发送请求的IIOP 310或SOAP/HTTP 311的应用层协议的服务总线。在另一个实施例中,可以省略这些应用层协议中的一或多个,和/或替代这些应用层协议中的一或多个或向这些应用层协议添加一或多个应用层协议。例如,服务总线所提供的其它附加/替代层,可以为IIOP、IIOPS、HTTP、HTTPS、基于JMS的SOAP、基于IIOP的RMI、基于JMS的XML、基于SMTP的SOAP、或EJB。另外,还能够改变可用于这些应用层协议的传输与网络层协议,和/或向这些应用层协议添加传输与网络层协议,例如除了TCP/IP,UDP/IP也可用。
仍参照图4,例如,当发现机制403发现一或多个能够把客户机请求指向其的可选Web服务实现时,可以根据Web定义语言(WSDL)文档实现这一指向。如果客户机使用一个WSDL文档获得客户机向其进行请求的目标服务实现的定义,则这样做是可能的。在这种情况下,在拦截了请求之后,发现机制可以首先获得目标服务WSDL文档,然后,基于该WSDL中的信息,例如,从一个通用描述、发现与集成(UDDI)注册表中获得针对适当替代Web服务实现的WSDL文档。注意,WSDL文档包括目标服务的细节,例如端口类型、连接情况、端口、消息、类型等。端口类型定义了目标服务所提供的操作和操作参数,连接情况指定传输机制,端口指定使用传送机制提供对目标服务进行访问的通道的端点地址。例如,作为选择,也可以使用DARPA代理标签语言(DAML)服务文档取代WSDL文档。
另外,例如,参照图4,在所描述的优选实施例中,匹配引擎使用发现、选择和安全机制来转换请求。在一个可选实施例中,可以省略这些机制中的一或多个机制,和/或取代这些机制中的一或多个,和/或把这些机制中的一或多个机制添加到和/或封装到匹配引擎。例如,附加或替代机制可以通过把来自Web客户机的一或多个请求囊括在一个工作单元中,提供交易能力。而且,例如,也可以把客户机策略数据封装于这些机制中或者应用随机策略。另外,也可以把Web客户机请求直接传递给匹配引擎,而无需首先进行句法分析,而且作为选择,当需要时,匹配引擎也可以调用句法分析器。
图5是本发明的优选实施例中主要步骤的流程图。在步骤501,拦截Web客户机请求。在步骤502,获得指定为Web客户机请求的目标的URL,在步骤503,进行检查,以观察在配置文件中是否把URL列为适合于由客户机端入站(图3的309)加以转换的URL。如果该URL不适合于转换,则在步骤504把Web客户机请求发送到目标URL。然而,如URL适合于转换,则在步骤505对Web客户机请求进行句法分析,以获得诸如随请求所发送的任何参数的附加信息,例如把请求指向其的Web服务的某一特定方面的细节,或者一个描述把请求指向其的Web服务的WSDL文档的细节。然后,在步骤506,基于客户机策略数据对Web客户机请求进行修改。例如,把请求重新指向提供了与原始请求的服务相同,但根据公司策略数据允许客户机加以使用的Web服务。一旦已修改了请求,则接下来在步骤504将其发送到已把请求重新指向其的Web服务。
图6是在图5的步骤506处执行处理的一个更详细的流程图。在步骤601,从配置文件获得针对客户机的策略数据,并且在步骤602,使用发现机制发现适合的处理Web客户机请求的替代Web服务实现。例如,可以基于URL和Web客户机请求中所指定的任何附加数据,发现替代Web服务实现。另外,发现机制也可以使用策略数据。在步骤603,使用一个选择机制,从适当的替代Web服务实现的所发现的列表中选择一个处理请求的Web服务实现。例如,可以基于指定Web服务必须是基于英国的,并且必须提供AmericanExpress付款方式的客户机策略数据,选择一个Web服务。选择机制还可以选择一个用于发送请求的应用层协议,即根据可以从服务总线得到、并且通过其可以接触所选择的Web服务实现的应用层协议进行这一选择。已经选择了一个Web服务之后,在步骤604,使用一个安全机制向请求施加一个适当的安全策略,例如所选择的Web服务可能要求对所有通信进行加密,和/或使用一个安全的应用层协议。在步骤605,作为选择,也可以把客户机专用信息添加给请求,例如,所添加的是一个诸如IP地址或机器的用于标识客户机数据处理主机的标识符,或者是一个可以用于标识Web客户机或Web客户机用户的标识符。最后在步骤606,把所转换的请求提供给适当的应用层协议,例如IIOP或SOAP/HTTP。例如,可以选择请求协议,以和所选择的Web服务的协议相匹配,或者基于例如指定了一个所需响应时间的客户机策略从由所选择的Web服务所支持的多个协议中选择请求协议。
注意,尽管以通用术语描述了本发明的优先实施例,但本领域的技术人员将会意识到,本发明可以体现于数据处理方法、数据处理设备、或包括用于执行数据处理方法的指令的计算机程序产品。
本发明提供了一种在其中拦截对Web服务的客户机请求和根据与客户机相关的策略数据更新请求的目标的方法、设备、以及计算机程序产品。另外,还可以改变在其中指定Web客户机请求的应用层协议,和/或把信息添加到请求。因此,可以发出请求,而针对这一请求对目标Web服务进行硬件编码的Web客户机适合于利用对Web服务的可管理的访问,从而导致对诸如提供可更好与Web客户机的要求相匹配的服务质量特性的Web服务的访问。
权利要求
1.一种转换Web客户机请求的客户机数据处理方法,该方法包括拦截请求;把请求中所指定的一个第一Web服务实现改变为一个第二Web服务实现;以及把请求转发到第二Web服务实现,从而可使第二Web服务实现处理该请求,其中,根据与Web客户机相关的策略数据选择第二Web服务实现。
2.根据权利要求1所述的方法,其中,在第一应用层协议中指定请求,该方法还包括下列步骤修改在第二应用层协议中指定的请求。
3.根据权利要求1或权利要求2所述的方法,其中,客户机数据处理主机包括SOCKS代理,拦截请求的步骤包括调用SOCKS代理,并包括请求的调用细节。
4.根据权利要求1或权利要求2所述的方法,其中,客户机数据处理主机包括HTTP代理,拦截请求的步骤包括调用HTTP代理,并包括请求的调用细节。
5.根据以上权利要求中任何一个权利要求所述的方法,还包括下列步骤发现一或多个处理请求的可选Web服务实现;以及从一或多个所发现的可选Web服务实现中选择第二Web服务实现。
6.根据权利要求5所述的方法,其中发现步骤包括下列步骤获得针对第一Web服务实现的一个第一Web服务实现Web服务定义语言(WSDL)文档;以及使用来自这一第一Web服务实现的WSDL文档的信息,获得针对一或多个可选Web服务实现中每一可选Web服务实现的一个WSDL文档。
7.根据以上权利要求中任何一个权利要求所述的方法,还包括下列步骤把一个安全策略施加于请求;其中,施加安全策略的步骤包括下列一或多个步骤至少对请求的一部分进行加密;把一个Web客户机密钥添加到请求;以及使用一个Web服务安全协议发送请求。
8.根据以上权利要求中任何一个权利要求所述的方法,还包括下列步骤添加客户机数据处理主机的一个IP地址;添加客户机数据处理主机的一个机器标识符;添加一个Web客户机密钥。
9.根据以上权利要求中任何一个权利要求所述的方法,其中,策略数据指定下列一或多个内容一个响应时间要求、一个安全水平要求、一个交易要求、一个开销要求、一个可得性要求、一个应用层协议要求、一个附加信息要求、以及一个Web服务实现要求。
10.一种用于转换Web客户机请求的客户机数据处理设备,该设备包括用于拦截请求的装置;用于把请求中所指定的一个第一Web服务实现改变为一个第二Web服务实现的装置;以及用于把请求转发到第二Web服务实现,从而可使第二Web服务实现处理该请求的装置,其中,可操作用于改变一个第一Web服务实现的装置,以根据与Web客户机相关的策略数据选择第二Web服务实现。
11.根据权利要求10所述的设备,其中,在第一应用层协议中指定请求,该设备还包括用于修改在第二应用层协议中指定的请求的装置。
12.根据权利要求10或权利要求11所述的设备,还包括一个SOCKS代理,可操作用于拦截请求的装置,以调用SOCKS代理,并包括请求的调用细节。
13.根据权利要求10或权利要求11所述的设备,还包括一个HTTP代理,可操作用于拦截请求的装置,以调用HTTP代理,并包括请求的调用细节。
14.根据权利要求10~13中任何一个权利要求所述的设备,还包括用于发现一或多个处理请求的可选Web服务实现的装置;以及用于从一或多个所发现的可选Web服务实现中选择第二Web服务实现的装置。
15.根据权利要求14所述的设备,其中用于发现的装置包括用于获得针对第一Web服务实现的一个第一Web服务实现Web服务定义语言(WSDL)文档的装置;以及用于使用来自这一第一Web服务实现的WSDL文档的信息,获得针对一或多个可选Web服务实现中每一可选Web服务实现的一个WSDL文档。
16.根据权利要求10~15中任何一个权利要求所述的设备,还包括用于把一个安全策略施加于请求的装置还包括用于至少对请求的一部分进行加密的装置;用于把一个Web客户机密钥添加到请求的装置;以及用于使用一个安全传送机制发送请求的装置。
17.根据权利要求10~16中任何一个权利要求所述的设备,还包括用于向请求添加专门针对客户机的信息的装置,包括以下的一或多个装置用于添加客户机数据处理主机的一个IP地址的装置;用于添加客户机数据处理主机的一个机器标识符的装置;用于添加一个Web客户机密钥的装置。
18.根据权利要求10~17中任何一个权利要求所述的设备,其中,策略数据指定下列一或多个内容一个响应时间要求、一个安全水平要求、一个交易要求、一个开销要求、一个可得性要求、一个应用层协议要求、一个附加信息要求、以及一个Web服务实现要求。
19.一种计算机程序产品,该计算机程序产品包括一系列指令,当在数据处理主机上执行这些指令时,可使数据处理主机执行根据权利要求1~9中任何一个权利要求所述的方法。
全文摘要
本发明提供一种拦截对Web服务的客户机请求和根据与客户机相关的策略数据修改请求的目标的方法、设备、以及计算机程序产品。另外,还可以改变其中指定Web客户机请求的应用层协议。因此,可以发出请求,而针对这一请求对目标Web服务进行硬件编码的Web客户机适合于利用对Web服务的可管理的访问,从而导致对诸如提供可更好与Web客户机的要求相匹配的服务质量特性的Web服务的访问。
文档编号H04L29/12GK1692617SQ200380100715
公开日2005年11月2日 申请日期2003年12月5日 优先权日2003年3月15日
发明者保罗·Z·弗里曼特尔, 伊丽莎白·A·哈钦森 申请人:国际商业机器公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1