CN102196035B - 用于提供统一web服务发现的方法和系统 - Google Patents

用于提供统一web服务发现的方法和系统 Download PDF

Info

Publication number
CN102196035B
CN102196035B CN201110072256.XA CN201110072256A CN102196035B CN 102196035 B CN102196035 B CN 102196035B CN 201110072256 A CN201110072256 A CN 201110072256A CN 102196035 B CN102196035 B CN 102196035B
Authority
CN
China
Prior art keywords
identity
web services
user
discovery
sub
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110072256.XA
Other languages
English (en)
Other versions
CN102196035A (zh
Inventor
R·纳拉亚南
R·梁
S·斯里尼瓦桑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN102196035A publication Critical patent/CN102196035A/zh
Application granted granted Critical
Publication of CN102196035B publication Critical patent/CN102196035B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

公开了统一web服务发现。通过特定web服务的基于云或基于企业的部署的公共自动发现逻辑来提供web服务发现的统一方法。可采用统一方法来应用适当的凭证,该统一方法使用适当的认证方案以供内部部署的、完全托管的或部分托管的自动发现的web服务。即使用于发现的协议随着服务的不同而不同、或在相同服务的基于云的部署和基于企业的部署之间不同,仍可实现公共接口。可高速缓存通过不同协议自动发现的web服务位置以供后续使用。

Description

用于提供统一web服务发现的方法和系统
技术领域
本发明涉及通信领域,尤其涉及通信领域中的统一通信服务。
背景技术
web服务对于客户机/服务器通信变得越来越流行。web服务可位于企业中的服务器上,或在线(托管供应)并且由客户机访问,用于各种各样的操作。文档共享、搜索、分析、报告、数据挖掘只是web服务的几个示例。web服务主机可支持不同的操作和/或认证方案。例如,托管服务器可支持web服务安全(WSS)协议认证方案,而内部部署(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服务的应用程序。此外,这些客户机设备还可通过外部连接(如通过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、124和126)或由在UC系统内部的服务器中的一个来管理的web服务。这些服务是通过各种标准化或专有机制可发现的。在根据各实施例的系统中,可采用发现模块/应用程序来自动地为订阅者发现可用的web服务,并且将web服务信息(位置、认证、操作等)作为元数据提供给消费应用程序,从而消除对个别地发现web服务以及手动地为每一服务建立单独的发现机制的需求。以下讨论更详细的示例。
虽然图1中的示例系统已被描述为具有诸如中介服务器、A/V服务器和类似设备等特定组件,但各实施例不限于这些组件或系统配置并且能够用采用更少或更多组件的其他系统配置来实现。采用统一web服务发现的系统的功能还可取决于组件能力和系统配置来不同地分布在系统的各组件之间。此外,各实施例不限于统一通信系统。此处所讨论的方法可应用于使用此处所描述的原理的联网通信环境中的任何数据交换。
图2是示出实现web服务的统一发现的联网系统的各种组件的概念图。由于诸如增强的通信系统客户机等企业客户机提供越来越多数量的web服务,因此他们与各种web服务提供者交互。根据各实施例的系统使得单个接口能够以统一方式来发现所需/可用的web服务。随着基于云的服务逐渐代替基于企业的服务,如华盛顿州雷蒙德市的微软公司的或OfficeCommunicator等特定服务可驻留在云中或在企业网络内。在这些情况下,向客户机提供动态地选择要使用哪一服务的手段。
此外,各种服务可采用用于将其自身暴露给客户机的不同的标准化或专有方法。基于万维网联盟(W3C)的元数据交换、基于结构化信息标准促进组织(OASIS)的通用描述、发现和集成(UDDI)是几个示例标准化方法。
在根据各实施例的系统中,如图示200所示,用户228可通过其客户机230与各种web服务提供者交互。客户机230可指代执行一个或多个应用程序的计算设备、在一个或多个计算设备上执行的应用程序、或以分布式方式执行的且由用户228通过计算设备访问的服务。在典型的系统中,客户机230可与管理客户机的网络236内的通信的一个或多个服务器(例如,服务器232)通信。可通过服务器232上可用的资源来提供web服务中的某一些。可通过在网络236内部的服务器234上可用的资源来提供其他web服务。可由在网络外部的各个服务器(例如,服务器238)或通过一个或多个附加网络(例如,网络240)可访问的分布式服务器242来提供又一些web服务。
根据一个示例场景,服务器232可方便诸如统一通信服务等多模态通信服务。另一服务器(例如,服务器234中的一个)可方便通信/日历/调度应用程序的目录和/或数据源服务。如果网络236是企业网络,并且根据该示例场景的两者服务器在网络内,则这一体系结构可被称为内部部署。如果两者服务器是在线托管的(在云中),则该配置可被称为完全托管的。如果服务器中的一个在企业网络内,而另一个被托管,则该配置可被称为部分托管的。根据另一些场景,可通过内部部署服务器来为某些用户服务,而通过托管服务来为另一些用户服务。该体系结构可被称为跨部部署。
图3是示出根据各实施例的用于执行统一web服务发现的相关软件组件及其交互的图示。根据各实施例的系统提供了对在上述不同类型的部署下的各种web服务的公共自动发现,能够对web服务的端点地址定位,能够确定由那些端点支持的认证方案,并且基于兼容的凭证类型的可用性来选择安全认证方案。
对web服务位置的发现(例如,基于统一资源定位符“URL”)可经由各种方法来完成,这些方法包括但不限于,域名系统服务器(DNSSRV)查找、动态主机配置协议(DHCP)选项、或在用户登录之后来自统一通信系统注册器的带内预配。还可采用专有发现机制,诸如华盛顿州雷蒙德市的微软公司的ExchangeWeb(EWS)发现。
可经由诸如web服务元数据交换指定(WS-MEX)等标准化协议或通过类似手段来自动发现绑定(端点地址的元组、认证方案、以及所支持的操作)。例如,EWS自动发现服务可使用专用的超文本传输协议(HTTP)头部作为服务器是否支持WSS认证方案的指示。一旦被发现,元数据描述对象可用于管理绑定。对象可被高速缓存以便通过减少网络通信量和不必要的MEX文档解析来改进性能。
返回至图示300中示出的示例配置,用户328可访问各种web服务客户机330。客户机330可方便通过通信应用程序344与诸如统一通信服务348等增强的通信系统交互。通信应用程序344本身可消费并且向用户328提供web服务中的某一些。或者,在客户机330上执行的多个应用程序346还可消费其他web服务。例如,浏览应用程序可利用web搜索服务,文字处理应用程序可利用基于web的文档共享服务,电子表格程序可利用各种通过web可用并且可搜索的数据源。
典型的交互可以从向统一通信服务348提供用户328的身份358开始。这可以是用户的登录、用户的推断身份、或相似的标识。除了提供通信服务以外,统一通信服务348可包括应用程序352,该应用程序352可提供web服务和/或代表用户328消费web服务。例如,应用程序352中的一个可管理企业网络内基于web的文档共享服务。作为服务的一部分,该应用程序可与企业网络上或企业网络外的其他web服务交互,并且将那些服务与其自身的文档共享服务结合。另一方面,应用程序352中的另一个可提供由客户机330上的应用程序346中的一个所消费的“纯”web服务。
在接收与用户328相关联的身份358之后,统一通信服务348的发现引擎350可确定是否有任何子身份与用户相关联。当今系统中的用户通常具有与不同web服务相关联的多个身份(例如,一个用于社交联网站点、一个用于数据交换服务、一个用于文档共享服务等)。可通过查找操作、通过从用户凭证(例如,用户的电子邮件地址)中推断、通过执行推导算法(例如,用户登录可被解密以得出一个或多个身份)以及类似的手段来确定子身份。一旦身份被确定,则发现引擎350可开始发现过程356,该发现过程确定与身份相关联的服务、服务提供者354的位置(例如,URL)、由服务提供者支持的认证类型、由服务提供者支持的操作类型、以及类似参数。随后可将所发现的信息提供给统一通信服务348和/或客户机330上的消费应用程序作为如上所述的元数据中的绑定。
由此,采用发现引擎350来建立用于提供通过统一通信服务348的各种web服务的单个框架。可按需(例如,在用户登录之后)、以随机间隔、或以周期性间隔执行该发现过程。可高速缓存并且更新该发现过程的结果以改进系统资源的使用和用户体验。
已经用具体的服务器、客户机设备、软件模块和交互描述了图1、2和3的示例系统。各实施例不限于根据这些示例配置的系统。统一web服务发现模型可以在采用更少或更多组件并执行其他任务的配置中实现。此外,已经结合描述以上实施例讨论了具体的协议和接口。各实施例也不限于这些示例。可以使用此处描述的原理用相似的方式来实现其他协议、交换和接口。
图4示出了根据各实施例的如何可从用户的主身份中确定不同的子身份,以及如何对系统中的每一子身份使用不同的web服务发现机制。在图示400中,用户428可采用主身份(例如,登录、用户名/密码、证书、个人识别号以及类似身份)来访问包括发现引擎462的通信服务。如以上讨论的,用户428可具有与不同web服务相关联的多个身份。可通过查找操作、通过从用户凭证(例如,用户电子邮件地址)中推断、或通过执行推导算法来从主身份460中确定这些子身份(464)。例如,用户登录可对多个身份加密,可通过解密从主身份中得到该多个身份。一旦子身份464被确定,则发现引擎462可采用不同(或相同)的发现机制466来发现与各个子身份相关联的web服务468。所发现的信息可包括服务提供者的位置、由服务提供者支持的认证类型、由服务提供者支持的操作类型、以及类似参数。
根据其他实施例,用户428可直接提供子身份464中的至少某一些。如上所述,可按需、随机地、或周期性地执行该发现。无论所发现的信息是否要被高速缓存,发现调度以及相关联的发现机制都可基于各个子身份来确定。可通过使用如注册表、文件和/或凭证管理器应用程序编程接口(API)等系统资源来将身份信息(主身份和子身份)存储在易失性存储器中或在应用程序的多次重启间持久存储。为了安全,可对凭证加密。
图5是可以实现各实施例的示例联网环境。提供统一web服务发现的平台可经由诸如托管服务等在一个或多个服务器上执行的软件来实现。该平台可以通过网络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,诸如来自华盛顿州雷德蒙市的微软公司的操作系统。系统存储器604还可包括一个或多个软件应用程序,诸如程序模块606、具有web服务能力的通信应用程序622和发现引擎624。
通信应用程序622可以是方便计算设备600上的其他应用程序和/或模块和与所请求的web服务相关的服务器之间的通信的任何应用程序。如先前讨论的,发现引擎624可方便基于用户身份的自动web服务发现操作。通信应用程序622和发现引擎624可以是向客户机设备提供增强的通信服务的托管服务的单独应用程序或集成组件。该基本配置在图6中由虚线608内的组件示出。
计算设备600可具有附加特征或功能。例如,计算设备600还可包括附加数据存储设备(可移动和/或不可移动),诸如例如磁盘、光盘或磁带。在图6中通过可移动存储609和不可移动存储610示出了这样的附加存储。计算机可读介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器604、可移动存储609和不可移动存储610都是计算机可读介质的示例。计算机可读介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、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服务发现可以使用此处所述的各原理通过具有更少或更多步骤的相似过程、以及不同的操作次序来实现。
以上说明书、示例和数据提供了对各实施方式组成的制造和使用的全面描述。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。相反,上述具体特征和动作是作为实现权利要求和各实施方式的示例形式而公开的。

Claims (12)

1.一种至少部分地在计算设备中执行的用于提供统一web服务发现的方法,所述方法包括:
接收与用户相关联的用户凭证(710);
基于所接收的用户凭证来确定与所述用户相关联的身份 (720),其中所接收的用户凭证包括以下中的一者或多者:电话号码、个人识别号、会话发起协议(SIP)标识符、以及统一资源标识符(URI);
通过推导算法来处理所述身份以标识一个或多个子身份,其中所述推导算法将所述身份解密以推导所述一个或多个子身份;
基于用户需求确定与所述一个或多个子身份相关联的web服务(730);
以统一方式采用一个或多个发现机制来发现与所述web服务的提供者相关联的信息,所述信息包括所述提供者的位置以及所述提供者支持的操作(740);
将与所述web服务的提供者相关联的所发现的信息作为元数据绑定提供给与所述用户相关联的至少一个消费应用程序;以及
使得所述至少一个消费应用程序能够基于与所述用户相关联的兼容凭证类型的可用性来选择认证方案。
2.如权利要求1所述的方法,其特征在于,还包括确定以下一组中的至少一个:web服务发现(356)的调度、发现结果是否被高速缓存、以及基于所述一个或多个子身份中的每一个子身份的发现机制(466)。
3.如权利要求1所述的方法,其特征在于,所述web服务的提供者(354)的位置包括所述提供者的统一资源定位符(URL),以及以下各项之一被用于发现所述位置:域名系统服务器(DNSSRV)查找、动态主机配置协议(DHCP)选项、以及来自系统注册器的带内预配。
4.一种采用统一web服务发现的统一通信系统,所述系统包括:
服务器,其被配置成:
管理所述统一通信系统的内部和外部资源与多个客户机应用程序之间的通信;
执行客户机应用程序的客户机设备(230),所述客户机应用程序被配置成:
将用户凭证提供给发现引擎(462);以及
所述发现引擎(462)被配置成:
基于所述用户凭证确定与所述用户相关联的至少一个身份(720),其中所述用户凭证包括以下中的一者或多者:电话号码、个人识别号、会话发起协议(SIP)标识符、以及统一资源标识符(URI);
通过推导算法来处理所述身份以标识一个或多个子身份,其中所述推导算法将所述身份解密以推导所述一个或多个子身份;
基于用户需求并且以统一方式采用一个或多个发现机制来发现与所述一个或多个子身份相关联的web服务(466)的web服务参数(730);
基于所发现的web服务参数来生成元数据绑定;
使得所述客户机应用程序、在所述服务器上执行的消费应用程序、以及在所述客户机设备上执行的消费应用程序中的一个能够基于与所述用户相关联的兼容凭证类型的可用性来选择认证方案;以及
将所述元数据绑定提供给以下一个:所述客户机应用程序、所述在所述服务器上执行的消费应用程序、以及所述在所述客户机设备上执行的消费应用程序(750)。
5.如权利要求4所述的系统,其特征在于,所述web服务参数包括:web服务提供者的位置、由所述web服务提供者支持的认证类型、以及由所述web服务提供者支持的操作。
6.如权利要求4所述的系统,其特征在于,由以下一组项中的至少一个来提供所述web服务(466):所述服务器、所述统一通信系统内的另一个服务器、所述统一通信系统外部的系统。
7.如权利要求4所述的系统,其特征在于,所述用户凭证包括以下各项之一:登录用户名/密码组合、证书、以及电子邮件地址。
8.如权利要求4所述的系统,其特征在于,发现(356)调度是基于每一子身份来确定的,并且所发现的参数被存储在包括以下各项之一的易失性存储器和持久存储中的一个中:系统注册表、文件、凭证管理器应用程序编程接口(API)。
9.一种用于提供统一web服务发现的方法,所述方法包括:
在可变部署系统中接收用户凭证(710);
基于所述凭证确定与所述用户相关联的多个身份(720),其中所述用户凭证包括以下中的一者或多者:电话号码、个人识别号、会话发起协议(SIP)标识符、以及统一资源标识符(URI);
通过推导算法来处理所述身份以标识一个或多个子身份,其中所述推导算法将所述身份解密以推导所述一个或多个子身份;
根据用户需求确定与所述一个或多个子身份相关联的多个web服务(730);
以统一方式采用一个或多个发现机制来发现与所述web服务的提供者相关联的信息,所述信息包括所述提供者的位置以及由所述提供者支持的操作(740);
将与所述web服务的提供者相关联的所发现的信息作为元数据提供给与所述用户相关联的至少一个消费应用程序(750);以及
使得所述至少一个消费应用程序能够基于与所述用户相关联的兼容凭证类型的可用性来选择认证方案。
10.如权利要求9所述的方法,其特征在于,还包括:
基于要发现多个web服务、遵循以下各项之一来重复所述发现(356):随机时间段、预定义时间段、以及用户需求;以及
基于要发现的身份和web服务中的一个来高速缓存所述发现(356)的结果。
11.如权利要求9所述的方法,其特征在于,采用标准化机制和专有机制中的至少一个来执行所述发现(356)。
12.如权利要求9所述的方法,其特征在于,所述web服务(466)包括下组中的至少一个:搜索服务、文档共享服务、以及数据共享服务。
CN201110072256.XA 2010-03-18 2011-03-17 用于提供统一web服务发现的方法和系统 Active CN102196035B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/726,854 2010-03-18
US12/726,854 US9247008B2 (en) 2010-03-18 2010-03-18 Unified web service discovery

Publications (2)

Publication Number Publication Date
CN102196035A CN102196035A (zh) 2011-09-21
CN102196035B true CN102196035B (zh) 2016-08-03

Family

ID=44603403

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110072256.XA Active CN102196035B (zh) 2010-03-18 2011-03-17 用于提供统一web服务发现的方法和系统

Country Status (2)

Country Link
US (1) US9247008B2 (zh)
CN (1) CN102196035B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020124286A1 (zh) * 2018-12-16 2020-06-25 吉安市井冈山开发区金庐陵经济发展有限公司 认证方法

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9247008B2 (en) 2010-03-18 2016-01-26 Microsoft Corporation Unified web service discovery
CN102985919B (zh) 2010-06-30 2016-03-02 惠普发展公司,有限责任合伙企业 用于序列化数据服务的系统和方法
WO2012002951A1 (en) 2010-06-30 2012-01-05 Hewlett-Packard Development Company, L.P. System and method for service recommendation service
WO2012106726A1 (en) 2011-02-04 2012-08-09 Nextplane Method and system for federation of proxy-based and proxy-free communications systems
WO2012112159A1 (en) 2011-02-17 2012-08-23 Hewlett-Packard Development Company, L.P. Systems and methods for managing a print job
US9203799B2 (en) 2011-03-31 2015-12-01 NextPlane, Inc. Method and system for advanced alias domain routing
US9716619B2 (en) 2011-03-31 2017-07-25 NextPlane, Inc. System and method of processing media traffic for a hub-based system federating disparate unified communications systems
US8970877B2 (en) 2011-03-31 2015-03-03 Hewlett-Packard Development Company, L.P. Using a generic email address of a server and a sender email address to determine a destination printer for print data
US9077726B2 (en) 2011-03-31 2015-07-07 NextPlane, Inc. Hub based clearing house for interoperability of distinct unified communication systems
WO2012147089A1 (en) 2011-04-29 2012-11-01 Hewlett-Packard Development Company, L. P. Method of managing print jobs using virtual print identity
US10757195B2 (en) * 2011-05-17 2020-08-25 Sony Corporation Device interconnection and service discovery via a communication cloud
JP5891740B2 (ja) 2011-11-24 2016-03-23 ブラザー工業株式会社 仲介サーバ及び通信装置
CN103139172B (zh) * 2011-11-30 2016-01-13 阿里巴巴集团控股有限公司 一种业务实现方法以及装置
US20130205018A1 (en) * 2012-02-06 2013-08-08 Samsung Electronics Co., Ltd. Extending service discovery into cloud computing
US8976388B2 (en) 2012-05-30 2015-03-10 Hewlett-Packard Development Company, L.P. Printer identification validation procedure on a cloud computer system to recognize the target printer
CN103051685A (zh) * 2012-12-10 2013-04-17 广州杰赛科技股份有限公司 在云系统中配置办公自动化系统的方法
US9954843B2 (en) 2013-02-28 2018-04-24 Microsoft Technology Licensing, Llc Web ticket based upon a symmetric key usable for user authentication
US9282157B2 (en) 2013-03-12 2016-03-08 Microsoft Technology Licensing, Llc Intermediary API for providing presence data to requesting clients
US20140282839A1 (en) * 2013-03-15 2014-09-18 Microsoft Corporation Unified enterprise device enrollment
US9705840B2 (en) 2013-06-03 2017-07-11 NextPlane, Inc. Automation platform for hub-based system federating disparate unified communications systems
US9819636B2 (en) * 2013-06-10 2017-11-14 NextPlane, Inc. User directory system for a hub-based system federating disparate unified communications systems
WO2015065398A1 (en) * 2013-10-30 2015-05-07 Hewlett-Packard Development Company, L.P. Application programable interface (api) discovery
CN104751046B (zh) * 2013-12-25 2018-11-23 中国移动通信集团公司 一种应用程序的用户认证方法及移动终端设备
US9992357B2 (en) 2014-01-31 2018-06-05 Hewlett-Packard Development Company L.P. Authentication of a print request
US20150234910A1 (en) * 2014-02-17 2015-08-20 Unify Square, Inc. Lifecycle management and provisioning system for unified communications
US9660999B2 (en) * 2015-02-06 2017-05-23 Microsoft Technology Licensing, Llc Discovery and connection to a service controller
US9906604B2 (en) 2015-03-09 2018-02-27 Dell Products L.P. System and method for dynamic discovery of web services for a management console
US9942202B2 (en) 2015-09-08 2018-04-10 Microsoft Technology Licensing, Llc Trust status of a communication session
WO2018102692A1 (en) * 2016-12-02 2018-06-07 Carrier Corporation Mixed-mode cloud on-premise secure communication
US10990368B2 (en) 2017-12-26 2021-04-27 Oracle International Corporation On-premises and cloud-based software provisioning
US20190278570A1 (en) * 2018-03-08 2019-09-12 Microsoft Technology Licensing, Llc Annotating Features of a Resource to Facilitate Consumption in Different Computing Environments
US10841336B2 (en) * 2018-05-21 2020-11-17 International Business Machines Corporation Selectively providing mutual transport layer security using alternative server names
CN111030887B (zh) * 2019-12-19 2021-11-05 杭州安恒信息技术股份有限公司 web服务器发现方法、装置和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1705940A (zh) * 2003-11-24 2005-12-07 微软公司 来自外联网的工作站安装的远程应用程序的无缝发现
CN101014945A (zh) * 2003-11-24 2007-08-08 微软公司 用于远程应用程序发现的web服务

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8171524B2 (en) * 1995-10-02 2012-05-01 Corestreet, Ltd. Physical access control
US6496931B1 (en) * 1998-12-31 2002-12-17 Lucent Technologies Inc. Anonymous web site user information communication method
US7174564B1 (en) * 1999-09-03 2007-02-06 Intel Corporation Secure wireless local area network
WO2001054021A1 (en) * 2000-01-18 2001-07-26 Richard Liming System and method providing a spatial location context
US6604132B1 (en) * 2000-06-09 2003-08-05 David H. Hitt System and method for embedding a physical mailing address in an electronic mail address
AU2002365037A1 (en) * 2001-11-12 2003-06-23 Worldcom, Inc. System and method for implementing frictionless micropayments for consumable services
US7853643B1 (en) * 2001-11-21 2010-12-14 Blue Titan Software, Inc. Web services-based computing resource lifecycle management
US7725590B2 (en) * 2002-04-19 2010-05-25 Computer Associates Think, Inc. Web services broker
US7475123B2 (en) * 2002-11-18 2009-01-06 Sap Ag Web service integration
US7587598B2 (en) * 2002-11-19 2009-09-08 Toshiba America Research, Inc. Interlayer fast authentication or re-authentication for network communication
US7366460B2 (en) * 2003-01-23 2008-04-29 Dexterra, Inc. System and method for mobile data update
CA2872032A1 (en) * 2004-01-09 2005-08-04 Corestreet, Ltd. Signature-efficient real time credentials for ocsp and distributed ocsp
US7623518B2 (en) * 2004-04-08 2009-11-24 Hewlett-Packard Development Company, L.P. Dynamic access control lists
WO2005116979A2 (en) * 2004-05-17 2005-12-08 Visible Path Corporation System and method for enforcing privacy in social networks
US20080052364A1 (en) * 2006-08-22 2008-02-28 Xiang Zhou System and method for protecting e-mail sender identity via use of customized recipient e-mail addresses
US7921176B2 (en) * 2007-01-03 2011-04-05 Madnani Rajkumar R Mechanism for generating a composite email
US7890956B2 (en) * 2007-03-14 2011-02-15 Sap Ag Method and system for implementing built-in web services endpoints
US8528058B2 (en) * 2007-05-31 2013-09-03 Microsoft Corporation Native use of web service protocols and claims in server authentication
US8082294B2 (en) * 2007-06-27 2011-12-20 Concept Solutions, Llc Methods and systems for providing web applications
US8695053B2 (en) * 2009-09-10 2014-04-08 Jeffrey Huang Apparatus and method for multimedia data reception, processing, routing, storage, and access using a web / cloud-computing synchronization of personal multimedia data
WO2011091056A1 (en) * 2010-01-19 2011-07-28 Servicemesh, Inc. System and method for a cloud computing abstraction layer
US9247008B2 (en) 2010-03-18 2016-01-26 Microsoft Corporation Unified web service discovery

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1705940A (zh) * 2003-11-24 2005-12-07 微软公司 来自外联网的工作站安装的远程应用程序的无缝发现
CN101014945A (zh) * 2003-11-24 2007-08-08 微软公司 用于远程应用程序发现的web服务

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2020124286A1 (zh) * 2018-12-16 2020-06-25 吉安市井冈山开发区金庐陵经济发展有限公司 认证方法

Also Published As

Publication number Publication date
US20110231473A1 (en) 2011-09-22
CN102196035A (zh) 2011-09-21
US9247008B2 (en) 2016-01-26

Similar Documents

Publication Publication Date Title
CN102196035B (zh) 用于提供统一web服务发现的方法和系统
US11399044B2 (en) System and method for connecting a communication to a client
US8572710B2 (en) Pluggable token provider model to implement authentication across multiple web services
US9930609B2 (en) System and method for authentication of a communication device
US9148333B2 (en) System and method for providing anonymity in a session initiated protocol network
US8578465B2 (en) Token-based control of permitted sub-sessions for online collaborative computing sessions
US20150029302A1 (en) Multi-enterprise video conference service
TWI590631B (zh) 無線網路上的多模態通信優先性
EP3047626A1 (en) Multiple resource servers with single, flexible, pluggable oauth server and oauth-protected restful oauth consent management service, and mobile application single sign on oauth service
US20070270126A1 (en) Authentication of a digital voice conversation
EP2678971A1 (en) Communication between applications on different endpoint
RU2009135239A (ru) Способы доступа к удаленным данным для портативных устройств
US20130035079A1 (en) Method and system for establishing data commuication channels
AU2010218305A1 (en) Distributed routing of conferences using conference identifier
WO2015042349A1 (en) Multiple resource servers with single, flexible, pluggable oauth server and oauth-protected restful oauth consent management service, and mobile application single sign on oauth service
WO2016165505A1 (zh) 连接控制方法及装置
EP2924942A2 (en) Method, device and system for achieving multi-service server distribution of session initiation protocol
US20110119768A1 (en) Communication arrangement
JP6215508B1 (ja) セキュアなメディアベース会議におけるコンプライアンス監視のための方法およびシステム
CN104052732A (zh) 为Web实时通信交互流管理身份提供者标识符的方法和系统
WO2007051394A1 (fr) Structure et procede de realisation de protection de confidentialite dans une application mobile
Raepple Connect to the Cloud-New Challenges for Enterprise Single Sign-on and Identity Provisioning

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150720

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150720

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant