统一web服务发现的制作方法

文档序号:7619124阅读:156来源:国知局
专利名称:统一web服务发现的制作方法
技术领域
本发明涉及通信领域,尤其涉及通信领域中的统一通信服务。
背景技术
web服务对于客户机/服务器通信变得越来越流行。web服务可位于企业中的服务器上,或在线(托管供应)并且由客户机访问,用于各种各样的操作。文档共享、搜索、分析、报告、数据挖掘只是web服务的几个示例。web服务主机可支持不同的操作和/或认证方案。例如,托管服务器可支持web服务安全(WSQ协议认证方案,而内部部署(on-premise) 服务器可支持具有客户机证书的相互传输层安全(MTLS)。web世界中的发现机制是不同的,并且各种系统遵照不同的标准。由于企业客户机需要与各种web服务交互,因此发现不同的web服务提出了挑战。使用多个界面会降低用户体验。此外,用基于云的服务替换某些基于企业的服务,特定服务可以是在云中或在企业网络中。在这些场景中,客户机可能需要选择使用哪个服务。

发明内容
提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容并非旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。各实施例涉及通过特定web服务的基于云或基于企业的部署的公共自动发现逻辑的web服务发现的统一方法。可采用统一方法来应用适当的凭证,该统一方法使用适当的认证方案以供内部部署的、完全托管的或部分托管的自动发现的web服务。即使用于发现的协议随着服务的不同而不同,或在相同服务的基于云的部署和基于企业的部署之间不同,仍可实现公共接口。根据某些实施例,可高速缓存自动发现的web服务位置以供后续使用。通过阅读下面的具体实施方式
并参考相关联的图形,这些及其他特点和优点将变得显而易见。可以理解,前述一般描述和以下具体实施方式
均仅是说明性的,且不限制所要求保护的各方面。


图1是示出一个示例统一通信系统的图示,其中可实现各实施例以供统一 web服务发现;图2是示出实现web服务的统一发现的联网系统内的各种组件的概念图;图3是示出根据各实施例的用于执行统一 web服务发现的相关软件组件及其交互的图示;图4示出了根据各实施例的如何可从用户的主身份中确定不同的子身份,以及如何对系统中的每一子身份使用不同的web服务发现机制;
图5是其中可实现根据各实施例的系统的联网环境;图6是其中可实现各实施例的示例计算操作环境的框图;以及图7示出了根据各实施例的提供统一 web服务发现的过程的逻辑流程图。
具体实施例方式如以上所简要描述的,可通过特定web服务的基于云或基于企业的部署的公共自动发现逻辑来采用web服务发现的统一方法。在以下详细描述中,参考了构成了详细描述的一部分并作为说明示出了各具体实施方式
或示例的附图。可组合些方面,可利用其他方面,并且可以做出结构上的改变而不背离本发明的精神或范围。因此,以下具体实施方式
并不旨在限制,并且本发明的范围由所附权利要求及其等效方案来限定。虽然在结合在个人计算机上的操作系统上运行的应用程序执行的程序模块的一般上下文中描述了各实施方式,但是本领域技术人员会认识到各方面也可以结合其他程序模块实现。一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,如本领域技术人员理解的,各实施例可以用其他计算机系统配置来实施,包括手持式设备、多处理器系统、基于微处理器或可编程消费者电子产品、小型计算机、大型计算机以及类似计算设备。各实施方式还能在任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实现。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。各实施例可被实现为计算机实现的过程(方法)、计算系统、或者如计算机程序产品或计算机可读介质等制品。计算机程序产品可以是计算机系统可读并且编码包括用于使得计算机或计算系统执行示例过程的指令的计算机程序的计算机存储介质。例如,计算机可读存储介质可经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧致盘和类似介质中的一个或多个来实现。贯穿本说明书,术语“平台”可以是用于管理web服务和有关网络通信的软件和硬件组件的组合。平台的示例包括但不限于,在多个服务器上执行的托管服务、在单个服务器上执行的应用程序以及类似系统。术语“服务器”一般指通常在联网环境中执行一个或多个软件程序的计算设备。然而,服务器还可被实现为视作网络上的服务器的、在一个或多个计算设备上执行的虚拟服务器(软件程序)。关于这些技术和示例操作的更多细节在以下提供。图1包括示出一个示例统一通信系统的图示100,其中可实现各实施例以供统一 web服务发现。统一通信系统是具有可提供给订阅者的各种各样的能力和服务(包括web 服务)的现代通信系统的示例。统一通信系统是方便即时消息收发、在场、音频-视频会议、 web会议和类似功能的实时通信系统。在统一通信(“UC”)系统中(如示图100中示出的系统),用户可经由作为该UC 系统的客户机设备的各种终端设备(102、104)来进行通信。每一客户机设备都能够执行用于语音通信、视频通信、即时消息通信、应用程序共享、数据共享等的一个或多个通信应用程序。除了其高级功能以外,终端设备还可执行方便诸如参与社交网络、基于web的文档共享、搜索、以及类似服务等各种web服务的应用程序。此外,这些客户机设备还可通过外部
5连接(如通过PBX到公共交换电话网(“PSTN”))来方便传统电话呼叫和相似通信。客户机设备可包括任何类型的智能电话、蜂窝电话、执行通信应用程序的任何计算设备、智能汽车控制台以及具有附加功能的高级电话设备。UC网络110可包括执行不同任务的多个服务器。例如,UC服务器114提供注册、 在场、以及路由功能。路由功能使该系统能够基于默认和/或用户设置的策略来将对一用户的呼叫路由到分配给该用户的客户机设备中的任一个。例如,如果用户不能通过常规电话被找到,则该呼叫可被转发到用户的蜂窝电话,并且如果没有接听则可以利用多个语音邮件选项。因为终端设备可以处理附加通信模式,所以UC服务器114可以通过访问服务器 112提供对这些附加通信模式(例如即时消息通信、视频通信等)的访问。访问服务器112 位于周边网络中并且以附加通信模式之一允许与其他用户通过UC网络110的连接。UC服务器114可包括执行上述功能的组合的服务器,或仅提供特定功能的专用服务器。例如,提供在场功能的家庭服务器、提供路由功能的路由服务器等。类似地,访问服务器112可提供多个功能,诸如防火墙保护和连接,或仅提供专用功能。音频/视频(A/V)会议服务器118通过经由内部或外部网络方便音频和/或视频会议能力来提供这些能力。中介务器116作为去往和来自诸如PSTN或蜂窝网络等其他类型的网络的信令和媒体的中介。中介服务器116还担当会话发起协议(SIP)用户代理。在UC系统中,用户可以具有一个或多个身份,该身份不必限于电话号码。取决于集成网络,该身份可以采取任何形式,如电话号码、会话发起协议(SIP)统一资源标识符 (URI)、或任何其他标识符。尽管在UC系统中可以使用任何协议,但SIP是常用方法。SIP是用于创建、修改和终止与一个或多个参与者的会话的应用层控制(信令)协议。该协议还可用于创建包括因特网电话呼叫、多媒体分发和多媒体会议的双方、多方或多播会话。SIP被设计成与底层传输层无关。SIP客户机可使用传输控制协议(“TCP”)来连接到SIP服务器和其他SIP端点。 SIP主要用于建立和拆卸语音或视频呼叫。然而,它可以在需要会话发起的任何应用中使用。这些应用包括事件订阅和通知、终端移动性等。语音和/或视频通信通常通过单独的会话协议(通常是实时协议(“RTP”))来完成。UC系统可为社交联网、多模态企业通信、基于web的共享服务及类似环境提供平台。当订阅者参与这一环境时,他们可利用由一个或多个外部服务器(例如,122、1M和 126)或由在UC系统内部的服务器中的一个来管理的web服务。这些服务是通过各种标准化或专有机制可发现的。在根据各实施例的系统中,可采用发现模块/应用程序来自动地为订阅者发现可用的web服务,并且将web服务信息(位置、认证、操作等)作为元数据提供给消费应用程序,从而消除对个别地发现web服务以及手动地为每一服务建立单独的发现机制的需求。以下讨论更详细的示例。虽然图1中的示例系统已被描述为具有诸如中介服务器、A/V服务器和类似设备等特定组件,但各实施例不限于这些组件或系统配置并且能够用采用更少或更多组件的其他系统配置来实现。采用统一 web服务发现的系统的功能还可取决于组件能力和系统配置来不同地分布在系统的各组件之间。此外,各实施例不限于统一通信系统。此处所讨论的方法可应用于使用此处所描述的原理的联网通信环境中的任何数据交换。图2是示出实现web服务的统一发现的联网系统的各种组件的概念图。由于诸如增强的通信系统客户机等企业客户机提供越来越多数量的web服务,因此他们与各种web 服务提供者交互。根据各实施例的系统使得单个接口能够以统一方式来发现所需/可用的 web服务。随着基于云的服务逐渐代替基于企业的服务,如华盛顿州雷蒙德市的微软公司的 Exchange 或OfficeCommunicator Service 等特定服务可驻留在云中或在企业网络内。 在这些情况下,向客户机提供动态地选择要使用哪一服务的手段。此外,各种服务可采用用于将其自身暴露给客户机的不同的标准化或专有方法。 基于万维网联盟(W3C)的元数据交换、基于结构化信息标准促进组织(OASIS)的通用描述、 发现和集成(UDDI)是几个示例标准化方法。在根据各实施例的系统中,如图示200所示,用户2 可通过其客户机230与各种 web服务提供者交互。客户机230可指代执行一个或多个应用程序的计算设备、在一个或多个计算设备上执行的应用程序、或以分布式方式执行的且由用户2 通过计算设备访问的服务。在典型的系统中,客户机230可与管理客户机的网络236内的通信的一个或多个服务器(例如,服务器23 通信。可通过服务器232上可用的资源来提供web服务中的某一些。可通过在网络236内部的服务器234上可用的资源来提供其他web服务。可由在网络外部的各个服务器(例如,服务器238)或通过一个或多个附加网络(例如,网络M0)可访问的分布式服务器242来提供又一些web服务。根据一个示例场景,服务器232可方便诸如统一通信服务等多模态通信服务。另一服务器(例如,服务器234中的一个)可方便通信/日历/调度应用程序的目录和/或数据源服务。如果网络236是企业网络,并且根据该示例场景的两者服务器在网络内,则这一体系结构可被称为内部部署。如果两者服务器是在线托管的(在云中),则该配置可被称为完全托管的。如果服务器中的一个在企业网络内,而另一个被托管,则该配置可被称为部分托管的。根据另一些场景,可通过内部部署服务器来为某些用户服务,而通过托管服务来为另一些用户服务。该体系结构可被称为跨部部署。图3是示出根据各实施例的用于执行统一 web服务发现的相关软件组件及其交互的图示。根据各实施例的系统提供了对在上述不同类型的部署下的各种web服务的公共自动发现,能够对web服务的端点地址定位,能够确定由那些端点支持的认证方案,并且基于兼容的凭证类型的可用性来选择安全认证方案。对web服务位置的发现(例如,基于统一资源定位符“URL”)可经由各种方法来完成,这些方法包括但不限于,域名系统服务器(DNS SRV)查找、动态主机配置协议(DHCP)选项43、或在用户登录之后来自统一通信系统注册器的带内预配。还可采用专有发现机制,诸如华盛顿州雷蒙德市的微软公司的Exchange Web Services (EffS)发现。可经由诸如web服务元数据交换指定(WS-MEX)等标准化协议或通过类似手段来自动发现绑定(端点地址的元组、认证方案、以及所支持的操作)。例如,EWS自动发现服务可使用专用的超文本传输协议(HTTP)头部作为服务器是否支持WSS认证方案的指示。一旦被发现,元数据描述对象可用于管理绑定。对象可被高速缓存以便通过减少网络通信量和不必要的MEX文档解析来改进性能。返回至图示300中示出的示例配置,用户3 可访问各种web服务客户机330。客户机330可方便通过通信应用程序344与诸如统一通信服务348等增强的通信系统交互。 通信应用程序344本身可消费并且向用户3 提供web服务中的某一些。或者,在客户机330上执行的多个应用程序346还可消费其他web服务。例如,浏览应用程序可利用web搜索服务,文字处理应用程序可利用基于web的文档共享服务,电子表格程序可利用各种通过web可用并且可搜索的数据源。典型的交互可以从向统一通信服务348提供用户3 的身份358开始。这可以是用户的登录、用户的推断身份、或相似的标识。除了提供通信服务以外,统一通信服务348 可包括应用程序352,该应用程序352可提供web服务和/或代表用户3 消费web服务。 例如,应用程序352中的一个可管理企业网络内基于web的文档共享服务。作为服务的一部分,该应用程序可与企业网络上或企业网络外的其他web服务交互,并且将那些服务与其自身的文档共享服务结合。另一方面,应用程序352中的另一个可提供由客户机330上的应用程序346中的一个所消费的“纯”web服务。在接收与用户3 相关联的身份358之后,统一通信服务348的发现引擎350可确定是否有任何子身份与用户相关联。当今系统中的用户通常具有与不同web服务相关联的多个身份(例如,一个用于社交联网站点、一个用于数据交换服务、一个用于文档共享服务等)。可通过查找操作、通过从用户凭证(例如,用户的电子邮件地址)中推断、通过执行推导算法(例如,用户登录可被解密以得出一个或多个身份)以及类似的手段来确定子身份。一旦身份被确定,则发现引擎350可开始发现过程356,该发现过程确定与身份相关联的服务、服务提供者354的位置(例如,URL)、由服务提供者支持的认证类型、由服务提供者支持的操作类型、以及类似参数。随后可将所发现的信息提供给统一通信服务348和/或客户机330上的消费应用程序作为如上所述的元数据中的绑定。由此,采用发现引擎350来建立用于提供通过统一通信服务348的各种web服务的单个框架。可按需(例如,在用户登录之后)、以随机间隔、或以周期性间隔执行该发现过程。可高速缓存并且更新该发现过程的结果以改进系统资源的使用和用户体验。已经用具体的服务器、客户机设备、软件模块和交互描述了图1、2和3的示例系统。各实施例不限于根据这些示例配置的系统。统一 web服务发现模型可以在采用更少或更多组件并执行其他任务的配置中实现。此外,已经结合描述以上实施例讨论了具体的协议和接口。各实施例也不限于这些示例。可以使用此处描述的原理用相似的方式来实现其他协议、交换和接口。图4示出了根据各实施例的如何可从用户的主身份中确定不同的子身份,以及如何对系统中的每一子身份使用不同的web服务发现机制。在图示400中,用户4 可采用主身份(例如,登录、用户名/密码、证书、个人识别号以及类似身份)来访问包括发现引擎 462的通信服务。如以上讨论的,用户4 可具有与不同web服务相关联的多个身份。可通过查找操作、通过从用户凭证(例如,用户电子邮件地址)中推断、或通过执行推导算法来从主身份460中确定这些子身份064)。例如,用户登录可对多个身份加密,可通过解密从主身份中得到该多个身份。一旦子身份464被确定,则发现引擎462可采用不同(或相同)的发现机制466来发现与各个子身份相关联的web服务468。所发现的信息可包括服务提供者的位置、由服务提供者支持的认证类型、由服务提供者支持的操作类型、以及类似参数。根据其他实施例,用户4 可直接提供子身份464中的至少某一些。如上所述,可按需、随机地、或周期性地执行该发现。无论所发现的信息是否要被高速缓存,发现调度以及相关联的发现机制都可基于各个子身份来确定。可通过使用如注册表、文件和/或凭证管理器应用程序编程接口(API)等系统资源来将身份信息(主身份和子身份)存储在易失性存储器中或在应用程序的多次重启间持久存储。为了安全,可对凭证加密。图5是可以实现各实施例的示例联网环境。提供统一 web服务发现的平台可经由诸如托管服务等在一个或多个服务器515上执行的软件来实现。该平台可以通过网络510 来与诸如智能电话513、膝上型计算机512、或台式计算机511( ‘客户机设备’)等各个计算设备上的客户机应用程序进行通信。如以上讨论的,在客户机511-513中的任一个上执行的客户机应用程序可将用户身份提供给以分布式方式在服务器514上或以集中式方式在单独的服务器516上执行的服务。该服务可使用一个或多个发现方法来确定与用户相关联的任何子身份、与那些身份相关联的web服务,并且发现web服务提供者、认证类型、操作类型等。该服务可直接从数据存储519中或通过数据库服务器518检索相关数据,并且通过客户机设备511-513将所请求的web服务提供给用户。网络510可包括服务器、客户端、因特网服务供应商、以及通信介质的任何拓扑结构。根据各实施例的系统可具有静态或动态拓扑结构。网络510可包括诸如企业网络等安全网络、诸如无线开放网络等非安全网络、或因特网。网络510还可通过诸如公共交换电话网络(PSTN)或蜂窝网络等其他网络来协调通信。此外,网络510可包括诸如蓝牙或类似网络等短程无线网络。网络510提供此处描述的节点之间的通信。作为示例而非限制,网络 510可包括诸如声学、RF、红外线和其他无线介质等无线介质。可以采用计算设备、应用程序、数据源和数据分发系统的许多其它配置来实现统一 web服务发现的框架。此外,图5中所讨论的联网环境仅用于说明目的。各实施方式不限于示例应用程序、模块、或过程。图6及相关联的讨论旨在提供对其中可实现各实施方式的合适计算环境的简要概括描述。参考图6,示出了根据各实施例的、诸如计算设备600等用于应用程序的示例计算操作环境的框图。在基本配置中,计算设备600可以是根据各实施例的执行具有web服务发现能力的客户机应用程序的客户机设备、或执行具有web服务发现能力的服务的服务器,并且包括至少一个处理单元602和系统存储器604。计算设备600还可包括协作执行程序的多个处理单元。取决于计算设备的确切配置和类型,系统存储器604可以是易失性的(诸如RAM)、非易失性的(诸如ROM、闪存等)或是两者的某种组合。系统存储器604 通常包括适于控制平台操作的操作系统605,诸如来自华盛顿州雷德蒙市的微软公司的 WINDOWS 操作系统。系统存储器604还可包括一个或多个软件应用程序,诸如程序模块606、具有web服务能力的通信应用程序622和发现引擎624。通信应用程序622可以是方便计算设备600上的其他应用程序和/或模块和与所请求的web服务相关的服务器之间的通信的任何应用程序。如先前讨论的,发现引擎6M 可方便基于用户身份的自动web服务发现操作。通信应用程序622和发现引擎6M可以是向客户机设备提供增强的通信服务的托管服务的单独应用程序或集成组件。该基本配置在图6中由虚线608内的组件示出。计算设备600可具有附加特征或功能。例如,计算设备600还可包括附加数据存储设备(可移动和/或不可移动),诸如例如磁盘、光盘或磁带。在图6中通过可移动存储609和不可移动存储610示出了这样的附加存储。计算机可读介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器604、可移动存储609和不可移动存储610 都是计算机可读介质的示例。计算机可读介质包括,但不限于,RAM、R0M、EEPR0M、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光存储、磁带、磁盘存储或其它磁存储设备、或能用于存储所需信息且可以由计算设备600访问的任何其它介质。任何这样的计算机可读介质都可以是计算设备600的一部分。计算设备600也可具有输入设备612,诸如键盘、鼠标、笔、语音输入设备、触摸输入设备和类似输入设备。还可包括输出设备614,诸如显示器、扬声器、打印机和其他类型的输出设备。这些设备在本领域中公知并且无需在此处详细讨论。计算设备600还可包含通信连接616,该通信连接允许该设备诸如通过分布式计算环境中的有线或无线网络、卫星链接、蜂窝链接、短程网络和类似机制来与其他设备618 进行通信。其他设备618可包括执行通信应用程序的计算机设备、其他web服务器和类似设备。通信连接616是通信介质的一个示例。通信介质可在其中包括计算机可读指令、数据结构、程序模块或其它数据。作为示例而非限制,通信介质包括有线介质,如有线网络或直接线连接,以及诸如声学、射频(RF)、红外线及其他无线介质之类的无线介质。各示例实施例还包括各种方法。这些方法可以用任何数量的方式,包括本文中所描述的结构来实现。一种此类方式是通过本文中描述的类型的设备的机器操作。另一可任选方式是结合一个或多个人类操作者执行该方法的各个操作中的某一些来执行该方法的一个或多个操作。这些人类操作者无需彼此同在一处,而是其每一个可以仅与执行程序的一部分的机器同在一处。图7示出了根据各实施例的提供统一 web服务发现的过程700的逻辑流程图。过程700可被实现为参与增强的通信系统的服务器或客户机应用程序的一部分。过程700在操作710开始,在这里接收用户信息。用户信息可包括与系统相关联的用户的主身份、登录、或从其中可得出用户的主身份的其他信息。在操作720,可确定用户的子身份(如果有的话)。这可通过查询凭证数据库、搜索各种数据源、或甚至通过从主身份得出子身份的算法来完成。操作720之后可以是操作730,在这里确定与用户的身份相关联的web服务。确定过程还可涉及如之前讨论的查询一个或多个数据库、从用户凭证推断、以及类似方法。在操作740,可发现每一 web服务的位置(即,资源)、由提供每一 web服务的资源支持的操作、 由每一 web服务支持的认证类型、以及类似参数。取决于web服务和资源类型(例如,基于企业或基于云),每一发现方法可以是不同的或相同的。当完成发现操作时,在可任选的操作750,可将所收集的信息作为元数据提供给客户机设备或方便服务的服务器上的消费应用程序。包括在过程700内的各操作仅出于说明目的。统一 web服务发现可以使用此处所述的各原理通过具有更少或更多步骤的相似过程、以及不同的操作次序来实现。以上说明书、示例和数据提供了对各实施方式组成的制造和使用的全面描述。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要
10求和各实施方式的示例形式而公开的。
权利要求
1.一种至少部分地在计算设备中执行的用于提供统一 web服务发现的方法,所述方法包括接收与用户相关联的信息(710);基于所接收的信息来确定与所述用户相关联的身份460(720); 确定与所述身份相关联的至少一个web服务(730);以及发现以下一组中的至少一个提供者的位置、由所述提供者支持的认证类型、以及所确定的web服务中的每一个的由所述提供者支持的操作(740)。
2.如权利要求1所述的方法,其特征在于,还包括将与所述web服务的提供者相关联的所发现的信息作为元数据提供给与所述用户相关联的消费应用程序,其中,将所发现的信息作为元数据绑定来提供(750)。
3.如权利要求1所述的方法,其特征在于,还包括基于与所述用户相关联的身份来确定多个子身份464,其中采用以下一组中的至少一个来确定所述子身份查找操作、从用户凭证中推断、以及通过采用推导算法。
4.如权利要求3所述的方法,其特征在于,基于以下中的一个来发现所述web服务 468 预定义时间段、随机间隔、以及用户需求。
5.如权利要求3所述的方法,其特征在于,还包括确定以下一组中的至少一个:web服务发现356的调度、发现结果是否被高速缓存、以及基于每一子身份的发现机制466。
6.如权利要求1所述的方法,其特征在于,所述web服务提供者354的位置包括所述 web服务提供者的统一资源定位符(URL),以及以下各项之一被用于发现所述位置域名系统服务器(DNS SRV)查找、动态主机配置协议(DHCP)选项43、以及来自系统注册器的带内预配。
7.一种采用统一 web服务发现的统一通信系统,所述系统包括 服务器,其被配置成管理所述统一通信系统的内部和外部资源与多个客户机应用程序之间的通信; 执行客户机应用程序的客户机设备230,所述客户机应用程序被配置成 将用户凭证提供给发现引擎;以及所述发现引擎462被配置成基于所述用户凭证确定与所述用户相关联的至少一个身份(720); 以统一方式采用一个或多个发现机制来发现与所述至少一个身份相关联的web服务的web服务参数(730);基于所发现的web服务参数来生成元数据绑定;以及将所述元数据绑定提供给以下一个所述客户机应用程序、在所述服务器上执行的消费应用程序、以及在所述客户机设备上执行的消费应用程序(750)。
8.如权利要求7所述的系统,其特征在于,所述web服务参数包括web服务提供者的位置、由所述提供者支持的认证类型、以及由所述提供者支持的操作,并且所述发现引擎 462还被配置成使得接收所述元数据的应用程序能够基于与所述用户4 相关联的兼容身份的可用性来选择认证方案。
9.如权利要求7所述的系统,其特征在于,由以下一组项中的至少一个来提供所述web 服务466 所述服务器、所述统一通信系统内的另一个服务器、所述统一通信系统外部的系统。
10.如权利要求7所述的系统,其特征在于,所述用户凭证包括以下各项之一登录、用户名/密码组合、证书、个人识别号、以及电子邮件地址。
11.如权利要求7所述的系统,其特征在于,发现356调度是基于每一身份来确定的,并且所发现的参数被存储在包括以下各项之一的易失性存储器和持久存储中的一个中系统注册表、文件、凭证管理器应用程序编程接口(API)。
12.—种其上存储有用于提供统一 web服务发现的指令的计算机可读存储介质,所述指令包括在可变部署系统中接收用户凭证(710);基于所述凭证确定与所述用户相关联的多个身份(720);确定与所述身份相关联的多个web服务(730);发现以下一组中的至少一个web服务提供者的位置、由所述提供者支持的认证类型、 以及由以统一方式采用一个或多个发现机制的提供者支持的操作(740);将与所述web服务的提供者相关联的所发现的信息作为元数据提供给与所述用户相关联的至少一个消费应用程序(750)。
13.如权利要求12所述的计算机可读介质,其特征在于,还包括基于要发现的身份和web服务中的一个、遵循以下各项之一来重复所述发现356 随机时间段、预定义时间段、以及用户需求;以及基于要发现的身份和web服务中的一个来高速缓存所述发现356的结果。
14.如权利要求12所述的计算机可读介质,其特征在于,采用标准化机制和专有机制中的至少一个来执行所述发现356。
15.如权利要求12所述的计算机可读介质,其特征在于,所述web服务466包括下组中的至少一个搜索服务、文档共享服务、以及数据共享服务。
全文摘要
公开了统一web服务发现。通过特定web服务的基于云或基于企业的部署的公共自动发现逻辑来提供web服务发现的统一方法。可采用统一方法来应用适当的凭证,该统一方法使用适当的认证方案以供内部部署的、完全托管的或部分托管的自动发现的web服务。即使用于发现的协议随着服务的不同而不同、或在相同服务的基于云的部署和基于企业的部署之间不同,仍可实现公共接口。可高速缓存通过不同协议自动发现的web服务位置以供后续使用。
文档编号H04L29/08GK102196035SQ20111007225
公开日2011年9月21日 申请日期2011年3月17日 优先权日2010年3月18日
发明者R·梁, R·纳拉亚南, S·斯里尼瓦桑 申请人:微软公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1