会员体验
专利管家(专利管理)
工作空间(专利管理)
风险监控(情报监控)
数据分析(专利分析)
侵权分析(诉讼无效)
联系我们
交流群
官方交流:
QQ群: 891211   
微信请扫码    >>>
现在联系顾问~
首页 / 专利库 / 空中管制 / 许可 / 应用许可认证

应用许可认证

阅读:964发布:2020-05-12

IPRDB可以提供应用许可认证专利检索,专利查询,专利分析的服务。并且本申请涉及应用许可认证。在此描述了用于应用许可认证的方法和系统。该方法包括在市场服务处处理来自购买者的对应用的许可证的请求。所述方法还包括将来自所述市场服务的令牌发送给客户机平台,其中所述客户机平台被配置为允许购买者将一个坐席指派给一个用户,并且当所述用户尝试访问所述应用时将所述令牌发送给第三方服务。所述方法还包括在市场服务处接受来自所述第三方服务的令牌,在市场服务内验证所述令牌的有效性,并将验证所述服务的有效性的消息返回给所述第三方服务。而且,所述第三方服务可以被配置为允许所述用户通过所述客户机平台访问所述应用内的特定等级的服务。,下面是应用许可认证专利的具体信息内容。

1.一种用于应用许可认证的方法(200),包括:

在市场服务(102)处处理(202)来自购买者的对应用的许可证的请求;

将来自所述市场服务(102)的令牌发送(204)给客户机平台(104),其中所述客户机平台(104)被配置为允许购买者将一个坐席指派给一个用户,并且当所述用户尝试访问所述应用时将所述令牌发送给第三方服务(106);

在所述市场服务(102)处接受(206)来自所述第三方服务(106)的所述令牌;

在所述市场服务(102)内验证(208)所述令牌的有效性;以及

将验证所述令牌的有效性的消息返回(210)给所述第三方服务(106),其中所述第三方服务(106)被配置为允许所述用户通过所述客户机平台(104)来访问所述应用内的特定等级的服务。

2.如权利要求1所述的方法(200),其特征在于,包括将通过回调URI将来自所述市场服务(102)的所述令牌发送给所述客户机平台(104)。

3.如权利要求1所述的方法(200),其特征在于,包括以指定时间间隔更新所述令牌以用新令牌取代到期令牌。

4.如权利要求1所述的方法(200),其特征在于,处理对所述应用的所述许可证的所述请求包括在所述市场服务(102)处处理所述购买者的登录,其中,所述购买者先前登录到了所述客户机平台(104)。

5.如权利要求1所述的方法(200),其特征在于,处理对所述应用的所述许可证的所述请求包括通过所述客户机平台(104)接受来自所述购买者的部署标识符和回调URL。

6.如权利要求1所述的方法(200),其特征在于,包括如果所述购买者通过所述客户机平台(104)登录到所述市场服务(102)就调用所述令牌的所述有效性。

7.如权利要求1所述的方法(200),其特征在于,包括如果不能验证所述令牌的所述有效性,就将无效消息返回给所述第三方服务(106),其中所述第三方服务(106)被配置为拒绝所述用户访问所述应用内的所述特定等级的服务。

8.如权利要求1所述的方法(200),其特征在于,包括如果不能验证所述令牌的所述有效性,则允许所述用户访问所述应用的减少功能的模式。

9.一种用于市场环境内的应用许可认证的系统(100),其特征在于,所述系统包括如下配置的市场服务(102):接受来自购买者的对客户机平台(104)内的应用的许可证的请求;

将来自所述市场服务(102)的令牌发送给客户机平台(104),其中所述客户机平台(104)被配置为允许购买者将一个坐席指派给一个用户,并且当所述用户尝试访问所述应用时将所述令牌发送给第三方服务(106);

接受来自所述第三方服务(106)的令牌;

验证所述令牌的有效性;以及

将验证所述令牌的有效性的消息返回给第三方服务(106),其中所述第三方服务(106)被配置为允许所述用户通过客户机平台(104)来访问所述应用内的服务。

10.如权利要求9所述的系统(100),其特征在于,所述第三方服务(106)被配置为如果所述市场服务(102)不能验证所述令牌的所述有效性,则拒绝所述用户访问所述应用。

说明书全文

应用许可认证

技术领域

[0001] 本申请涉及服务的许可,特别是对应用的许可认证。

背景技术

[0002] 电子商务是指通过诸如例如因特网或其它计算网络的电子系统来购买和出售产品或服务。市场是一种通过多个第三方公司将产品或服务提供给客户的电子商务站点或服务。因为市场正变得日益流行,第三方公司利用市场作为一种通过让市场转售对可由该第三方公司所提供的服务或应用的访问来扩展他们的范围的途径。例如,如果地图服务公司希望出售他们的产品,他们可以在市场中出售“地图应用”。该应用可以提供某种程度的用户体验;然而大多数的功能则由后端第三方服务来支持。有价值的服务的供应商可以从一种当调用他们的服务时验证调用者是已经支付的人而不是试图不支付就使用站点的服务的人的方法中获益。
[0003] 通常,这个问题通过使用“开放认证”(OAuth)来解决。OAuth是一种通过使用令牌来取代证书(诸如例如用户的用户名和密码)的开放的认证标准。在使用OAuth的典型场景中,每个第三方服务可以向市场注册它的应用端点并接收“应用秘密”。当应用或服务的特定用户试图使用该特定的应用或服务时,可以强制用户首先登录到市场。在这点上,市场可以验证用户的身份,并使用应用秘密来生成令牌。随后将令牌传回第三方服务以供通常作为cookie存储在用户机器上。
[0004] 然而,OAuth方案的关键缺点在于市场可能必须要么直接地要么通过联合身份来获得用户的身份。联合身份可以用于链接可能跨多个不同的身份管理系统所存储的用户的电子身份和属性。这在用户与购买者是同一人的聚焦消费者的市场中是合理的。然而,对于实际终端用户可能与购买者不是同一人的企业市场来说,这却是个大麻烦。对于这样的企业市场,可以使用不同类型的认证模型来验证市场用户。另外,这样的企业市场的主管可能希望通过给予少数管理员购买权利,而不是给予每个用户购买授权来集中化购买动作。而且,许多企业对于为了使用来自市场的应用而迫使他们整个员工库(employee-base)都要获悉新的身份有所抵触。最后,对于确保安装了所购买的应用的特定服务器可以安全地从市场访问和下载应用也存在技术上的挑战。由于购买者是在他们自己的个人计算机(PC)上登录,而非在服务器上登录,这就会成为一个问题。因此,来自服务器的对从市场下载付费的应用的调用不能被认证。

发明内容

[0005] 下面呈现了本发明的简化概述,以便提供此处所描述的某些方面的基本概念。此发明内容不是所要求保护的主题的详尽的概述。既不是要指出所要求保护的主题的关键性元素,也不是要详细描述本发明的范围。唯一的目的是以简化形式呈现所要求保护的主题的某些概念,作为稍后呈现的比较详细的描述的前奏。
[0006] 实施例提供了一种用于应用许可认证的方法。该方法包括在市场服务处对来自购买者的对应用的许可证的请求进行处理并从市场服务将令牌发送给客户机平台,其中所述客户机平台被配置为允许所述购买者为用户分配一个坐席并且在当用户试图访问该应用时将令牌发送给第三方。所述方法还包括在市场服务处接受来自所述第三方的令牌并在市场服务中验证该令牌的有效性。所述方法还包括将验证所述令牌的有效性的消息返回给第三方服务,其中所述第三方服务被配置为允许所述用户通过客户机平台来访问应用内的特定等级服务。
[0007] 另一个实施例提供了一种用于在市场环境内的应用许可认证的系统。该系统包括市场服务,被配置为接受来自购买者的对客户机平台内的应用的许可证的请求并从市场服务将令牌发送给客户机平台,其中所述客户机平台被配置为允许所述购买者为用户分配一个坐席并且在当用户试图访问该应用时将令牌发送给第三方。市场服务还被配置为接受来自第三方的令牌、验证所述令牌的有效性以及将验证所述令牌的有效性的消息返回给所述第三方服务,其中所述第三方服务被配置为允许用户通过客户机平台访问在所述应用内的服务。
[0008] 另一个实施例提供了用于存储计算机可读指令的一个或多个非易失的计算机可读存储介质,当由一个或多个处理设备执行时所述计算机可读指令提供了一种应用许可认证系统。所述计算机可读指令包括代码,所述代码被配置为在市场服务处对来自购买者的对应用的许可证的请求进行处理并从市场服务将令牌发送给客户机平台,其中所述客户机平台被配置为允许所述购买者为用户分配一个坐席并且在当用户试图访问该应用时将令牌发送给第三方。所述计算机可读指令还包括被配置为接受来自第三方的令牌、验证所述令牌的有效性以及将验证所述令牌的有效性的消息返回给所述第三方服务的代码,其中所述第三方服务被配置为允许用户访问在所述应用内的不同等级的服务。
[0009] 提供本发明内容是为了以简化的形式介绍一些概念;这些概念将在以下具体实施方式中被进一步描述。本发明内容并不旨在标识所要求保护主题的关键特征或必要特征,也不旨在用于限制所要求保护主题的范围。

附图说明

[0010] 图1是一种在市场环境内应用许可认证的系统的实施例;
[0011] 图2是一种用于应用许可认证的方法的框图;
[0012] 图3A和3B是用于应用许可认证的消息流程图的实施例,在其中,用户不必为了使用应用而登录到市场服务。
[0013] 图4A和4B是应用许可的消息流程图的实施例,在其中,购买者也是用户;以及[0014] 图5是示出存储适用于认证第三方服务所支持的应用的许可证的代码的有形计算机可读介质的框图。
[0015] 贯穿本公开和附图使用相同的附图标记来引用相同的组件和特征。100系列中标号指的是最初在图1中所找到的特征,200系列中的标号指的是最初在图2中找到的特征,300系列中的标号指的是最初在图3中找到的特征,依此类推。

具体实施方式

[0016] 在此描述的实施例阐述了一种用于应用许可认证的方法和系统。如在此所使用的,术语“应用”可以指由第三方提供的任意类型的应用或服务,或具有被限制的访问权限的任意类型的内容。所述方法和系统可以通过允许用户在不必直接登录到市场的情况下访问应用来减少市场环境内的应用的用户的负担。这是通过一种允许在应用的购买者的身份的认证和应用的实际终端用户的身份认证之间的有效区别的方法和系统来完成的。在一些实施例中,所述用户可能与购买者并不相同,因为购买者可以购买特定数目的“坐席”,其中该特定数目的“坐席”是在所购买的许可证下可以访问该应用或服务的用户的数目。在一些实施例中,购买者可以代表用户购买服务或应用,并且将权利转让给该用户。例如,购买者可以将特定应用或服务的权利作为礼物转让给用户。而且,在一些实施例中,由用户的计算设备所运行的应用可以不同于在购买过程期间购买者计算设备所运行的应用。这可以在例如许可证授权对多个应用的访问时发生。而且,在此所述的方法和系统还可以将通过第三方服务发生的盗版风险最小化。在一些实施例中,可以通过向试图访问应用的用户提供特定的令牌并确保在用户被允许访问该应用之前对该令牌进行验证来最小化盗版风险。
[0017] 在实施例中,市场服务可以用作许可证授权机构。市场服务可以处理从购买者接收的支付,向购买者提供令牌,验证所接收的令牌的有效性,在指定的时间间隔向用户发送经更新的令牌以及验证和更新许可证。在各种实施例中,所述令牌可以用作具有特定许可证的证明,并且可以被用于验证试图访问一个或多个特定应用的用户的身份。而且,所述许可证可以包括在指定时间量中访问和使用特定应用的权利,或可以包括访问应用内的不同的特征集的权利。所述应用可以是通过客户机平台被提供给用户或客户的任意类型的服务。可以通过市场环境内的第三方将所述应用提供给客户机平台。
[0018] 作为正文前的图文,一些附图是在一个或多个结构组件(不同地称为功能、模块、特征、元件等等)的上下文中来描述概念的。附图中示出的各种组件能够以任何方式来实现,例如,通过软件、硬件(例如,分立逻辑组件等等)、固件等等,或这些实现的任何组合。在一个实施例中,各个组件可反映对应的组件在实际实现中的使用。在其他实施例中,附图中所示的任何单个组件可由多个实际组件来实现。对附图中的任何两个或更多个单独组件的描绘可以反映由单个实际组件所执行的不同功能。图1提供了关于可用于实现附图中所示的各功能的一个系统的细节。
[0019] 其他附图以流程图形式描述了概念。以此形式,某些操作被描述为构成以某一顺序执行的不同的框。这些实现是示例性而非限制性的。此处描述的某些框可被分组在一起并在单个操作中执行,某些框可被分成多个组件框,并且某些框可以按与此处所示出的不同的次序来执行(包括以并行方式执行这些框)。流程图中所示的框可以通过软件、硬件、固件、手动处理、这些实现的任何组合等来实现。如此处所使用的,硬件可包括计算机系统、诸如专用集成电路(ASIC)之类的分立逻辑组件等以及它们的任意组合。
[0020] 关于术语,短语“配置成”涵盖可以构造任何种类的功能来执行所标识的操作的任何方式。功能可以被配置成使用,例如,软件、硬件、固件等或其任何组合来执行操作。
[0021] 术语“逻辑”涵盖用于执行任务的任何功能。例如,流程图中所示的每一操作对应于用于执行该操作的逻辑。操作可以使用,例如,软件、硬件、固件等或其任何组合来执行。
[0022] 如在此使用的,术语“组件”、“系统”、“客户机”等旨在指代计算机相关的实体,它们可以是硬件、(例如,执行中的)软件和/或固件、或其组合。例如,组件可以是,在处理器上运行的进程、对象、可执行码、程序、函数、库、子例程,和/或计算机或软件和硬件的组合。作为说明,运行在服务器上的应用程序和服务器都可以是组件。一个或多个组件可以驻留在进程中,组件可以位于一个计算机内和/或分布在两个或更多计算机之间。术语“处理器”一般被理解为指硬件组件,诸如计算机系统的处理单元。
[0023] 此外,所要求保护的主题可以使用产生控制计算机以实现所公开的主题的软件、固件、硬件或其任意组合的标准编程和/或工程技术而被实现为方法、装置或制品。如此处所使用的术语“制品”旨在涵盖可以从任何非瞬态计算机可读设备或介质(诸如计算机可读存储介质)可以访问的计算机程序。
[0024] 非瞬态计算机可读存储介质可以包括但不限于磁存储设备(例如,硬盘、软盘、以及磁带等等)、光盘(例如,紧致盘(CD)以及数字多功能盘(DVD)等等)、智能卡和闪存设备(例如,卡、棒和钥匙驱动器等等)。相反,计算机可读介质一般(即,不必需是存储介质)可附加地包括用于无线信号之类的通信介质,诸如传输介质。
[0025] 图1是一种在市场环境内应用许可认证的系统100的实施例。系统100可以包括市场服务102、客户机平台104以及第三方服务106。如在图1中所示,市场服务102、客户机平台104以及第三方服务106还包括服务108和110、112和114。第三方服务106还可以是被配置为直接控制对由特定应用所提供的服务的访问的应用中心。在各个实施例中,第三方可以是使用诸如HTTP协议、FTP协议或HTTPS协议之类所提供的服务,或可以是使用诸如直接DCE/RPC调用之类的定制的非HTTP协议所提供的服务。
[0026] 服务器的数目并不局限于在本示例中所示的数目。在云计算布置中,可以使用数以十计、数以百计或甚至数以千计个服务器。而且,所述服务器108、110、112和114可以是虚拟的,即可以由软件仿真来实现服务器。服务器108、110、112和114可以包括web服务器、云服务器以及其它将内容提供给诸如购买者设备116和用户设备118之类的其它服务器或计算设备的计算架构。在一些实施例中,市场服务102内的服务器108和110可以分别用作店面(storefront)服务的服务器和许可服务的服务器。而且,在此所描述的实施例中,术语“购买设备”可以被用于注释由特定“购买者”所操作的任意类型的计算设备,其中,所述购买者可以是特定应用许可证的管理员。另外,术语“用户设备”可以被用于注释由特定“用户”所操作的任意类型的计算设备。
[0027] 市场服务102、客户机平台104以及第三方服务106可以通过网络(未示出)彼此耦合,其中,所述网络可以包括提供到服务器108、110、112和114的访问的任意类型的网络或网络组合。在一些实施例中,例如,网络可包括局域网(LAN)、广域网(WAN)、无线广域网(WWAN)、因特网或它们的任意组合。另外,市场服务102、客户机平台104、以及第三方服务106或其任意组合可位于同一位置并且在物理上彼此耦合。
[0028] 第三方服务106可以为在客户机平台104上运行的应用提供服务。在各个实施例中,应用代码可以在客户机平台104的顶层运行,并可以调用第三方服务106。或者,应用代码可以在客户机平台104的顶层运行,而根本不需要使用第三方服务106。在这两个实例中,第三方服务106或客户机平台104或这两者可以调用许可服务。而且,在一些实施例中,应用可以在与客户机平台104分开的诸如个人计算机或移动设备之类的设备上运行。例如,应用可以在购买者设备116或用户设备以及其它设备上运行。另外,应用可以通过特定服务(包括HTTP和非HTTP协议两者)与客户机平台104以及第三方应用106通信。
[0029] 购买者通过输入用户名和密码来登录客户机平台104以对客户机平台认证服务119进行认证。购买者随后可以查看为用户提供许多不同的服务的各种应用。购买者设备
116可以通过店面120来定位期望的应用,如箭头121所示。而且,在一些实施例中,购买者设备116可以查找想要的包(bundle),所述包包括多个相关的应用或其它产品。一旦购买者找到了想要的应用,购买者就与购买者设备116的浏览器中的店面120进行交互以开始交易。购买者设备随后可以从店面120导航到市场服务102内的市场认证服务122,如箭头
123所示。在该点处,将关于购买者想要购买的应用(例如应用ID)、想要的许可证(例如完整、高级或体验)以及客户机平台的身份(例如部署标识符或ID)及其位置(例如用于客户机平台102的位置的统一资源定位符或URI,也被称为回调URI)的信息传递给市场服务102。
在一个实施例中,该信息被作为URI中的参数从店面120传递给市场服务102。购买者随后被提示通过市场认证服务122来登录到市场服务102。在一个实施例中,市场认证服务122可以使用与客户机平台认证服务所使用的认证并不相同的认证形式。而且,在一些实施例中,可以使用许多认证技术中的任意技术来认证用户,包括诸如由微软公司开发的Windows NT认证、由微软公司开发的Windows Live ID Web认证、Kerberos认证或基于表格的认证。
另外,在实施例中,市场认证服务122可以在服务器108中操作。
[0030] 在登录后,购买者设备116可以购买权利处理中心124内想要的应用的付费许可证或者可以请求该想要的应用的免费体验许可证。如果该许可证是付费许可证,它可以具有相关联的权利等级,例如高级付费许可证或基本付费许可证等等。另外,付费许可证和体验许可证每个都可以具有具体的到期日期。而且,一些免费的许可证可能没有到期日期,而是允许用户不受限地访问特定服务。在权利处理中心124已经处理了权利之后,关于购买的信息(包括关于应用的许可证的信息以及关于许可证购买者的信息)可以被发送给权利存储数据库128,如箭头130所示。在一些实施例中,关于许可证购买者的信息包括,例如购买者的市场身份以及诸如部署标识符(ID)的客户机平台的标识符。
[0031] 另外,在已经处理了许可证支付或已经授权了免费体验许可证之后,许可证的令牌可以通过客户机平台104内的店面120被发送回购买者设备116,如箭头132所示。在实施例中,令牌可以被称为“权利令牌”。市场服务102可以将权利令牌存储在权利存储数据库128中或存储在称为“权利存储”的基于云的存储(未示出)中或同时存储在这两者中。令牌可以包括可被用于创建数字摘要的关键字ID。令牌还可以包括关于购买者最后登录市场服务102的日期以及令牌的到期日期(例如在发出令牌后的三十天)的信息。在一些实施例中,使用关键字ID创建的摘要可以是基于散列的消息认证码(HMAC)摘要。在一些实施例中,令牌还可以包含可以由特定服务(例如第三方服务106)解密的经加密信息或提供给令牌的开发者的分开的关键字。
[0032] 在市场服务102内已经生成令牌之后,购买者设备116可以通过具有嵌入的令牌的回调URI被重定向到客户机平台104内的店面120。可以从市场服务102内的应用下载储存库服务133处将回调URI传递给客户机平台104。在一些实施例中,令牌可以被嵌入到URI内。一旦购买者浏览器接收到令牌以及应用的产品代码,可以由店面120从URI读取令牌和产品代码,并本地地持久保存在集中式许可证存储数据库134中。
[0033] 可以允许购买者设备116指派给用户的许可证的坐席的购买数目,其中,每个许可证可以具有不同数目的购买坐席。购买设备116可以通过客户机平台104内的坐席指派用户界面(UI)136将一个坐席指派给用户设备118以及多个附加用户设备,如箭头137所示。坐席指派或坐席映射随后可以被存储在集中式许可证存储数据库134内。而且,在一些实施例中,可以基于特定用户设备的硬件签名来指派坐席。而且,在一些实施例中,除了购买者设备116之外的一个设备可以被用于将坐席指派给用户。
[0034] 集中式许可证存储数据库134可以包括与操作购买者设备116的购买者有关的信息,其中购买者可以被指定为许可证的管理员。在一个实施例中,可以使用相同的权利令牌来认证在客户机平台102内的所有被指派的用户(包括用户设备118和购买者设备116)。而且,一旦已经使用权利令牌认证了特定用户设备118,执行认证来验证登录的用户与授权的用户的用户ID相匹配。
[0035] 用户设备118可以安装特定应用,并试图通过客户机平台104内的应用中心138来访问特定应用。在各种实施例中,应用中心138可以是在客户机平台104内运行特定应用的应用代码的地方。另外,用户设备118还可以尝试通过第三方服务106直接访问应用,如箭头139所示。在一些实施例中,用户设备118可以试图通过输入与特定权利令牌有关的特定部署ID来访问应用。在运行时,应用可以调用客户机平台104内的令牌检索应用编程接口(API)140。令牌检索API140可以检索权利令牌以查找用户设备118试图访问的特定应用的许可证。令牌检索API140随后可以将权利令牌传递给支持该应用的第三方服务106。具体地,权利令牌可以被传递给第三方服务106内的许可强制中心142,如箭头144所示。
[0036] 第三方服务106内的许可强制中心142可以将所接收的权利令牌传递给市场服务102内的令牌检查器146或许可证认证中心,如箭头148所示。在一些实施例中,令牌检查器146可以被存储在服务器110内。令牌检查器146可以通过检查存储在权利存储数据库
128内的关于令牌的信息来验证权利令牌的完整性,如箭头150所示。例如,令牌检查器146可以使用HMAC摘要检查令牌的完整性。令牌检查器146可以检查权利令牌的到期日期以及许可证的到期日期,并且可以审计该令牌以检测同一令牌的欺骗性重用(replaying)。令牌检查器146还可以验证许可证仍然是有效的。而且,在一些实施例中,客户机平台104自身可以通过令牌检查器146来验证权利令牌的有效性。
[0037] 一旦令牌检查器146判定权利令牌是有效的还是无效的,令牌检查器146可以将有效或无效的消息发送给第三方服务106内的许可强制中心142,如箭头148所示。第三方服务106随后可以基于所接收的消息判定是否允许用户设备118访问应用。第三方服务106的判定可以被发回给应用中心138,如箭头152所示。如果第三方服务106判定权利令牌是无效地,与应用中心138对接的用户设备118可以接收指示对应用的访问已被拒绝的错误消息,或者,可以允许应用在减少功能的模式中运行。否则,如果第三方服务106判定权利令牌是有效的,可以允许用户设备118访问由第三方服务106所支持的应用的资源。
[0038] 在一些实施例中,市场服务102内的许可续订中心154可以与客户机平台104内的续订工作中心156周期性地通信,如箭头158所示。可以将许可续订中心154存储在服务器110内。如果令牌检查器146确定特定的许可证已经到期,可以在许可续订中心154内来续订该许可证。在一些实施例中,令牌检查器146可以在续订该特定许可证之前验证用户的订阅是否仍然有效。而且,令牌检查器146可以确定出于任何理由来希望许可证包括例如更加丰富的权利信息或更加安全的加密特征。这样,可以在任意时间在许可续订中心154内续订该许可证。一旦已经续订了许可证,包括新权利令牌的与新许可证有关的信息可以被发送给续订工作中心156。然而。如果没有续订到期的许可证,令牌检查器146可以告知第三方服务106该许可证的权利令牌是无效的。
[0039] 图2是一种用于应用许可认证的方法200的框图。购买者可以通过点击购买者设备的浏览器内的链接使用该购买者设备来访问市场服务。当购买者点击浏览器上的链接时,它们将转换到市场服务。对于每个交易,在链接内存在唯一的部署ID和回调URI。`购买者可以使用他们特定的用户名或诸如购买者ID之类的其它形式的标识来登录到市场服务。而且,在各个实施例中,购买者还可以在登录到市场服务之前先登录到客户机平台。在框202,在市场服务处处理购买者设备对应用的许可证的请求。例如,购买者可以购买想要的应用或服务的付费许可证或请求体验许可证,其中,所述应用或服务可以被第三方服务所支持。而且,在一些实施例中,购买者可以请求许多应用(即一批应用)的许可证。可以生成交易的权利,并将其存储在基于云的存储系统中或存储在市场服务内的权利存储中。
[0040] 在框204,可以从市场服务发送令牌给客户机平台。一旦已经处理了权利请求,可以由市场服务来生成特定许可证的令牌。在一些实施例中,令牌可以被称为“权利令牌”。权利令牌可以包括各种关于许可证的信息,包括例如应用ID、购买的坐席的数目(即允许访问该应用的用户的数目)、部署ID以及购买者ID。在一些实施例中,应用ID可以是正在购买的应用或服务的标识符。令牌还可以包括关键字ID,关键字ID可以被用来基于HMAC签名、最后登录到市场服务的日期以及令牌的开始日期和到期日期来创建摘要。另外,令牌包含关于所发出的诸如例如付费高级许可证、付费标准许可证或体验许可证之类的特定类型的许可证的具体信息。
[0041] 市场服务还通过客户机平台使用回调URI将令牌发送回购买者设备。在一些实施例中,令牌包括纯文本部分的数字摘要,其中,所述数字摘要可以是HMAC形式的摘要。购买者设备可以接收令牌和特定产品代码或HTML页面,并且将该信息发送给客户机平台内的集中式许可数据库。在一些实施例中,在将令牌输入到许可数据库之前,客户机平台可以使用令牌检查器来验证令牌的完整性。集中式许可数据库还可以将购买者指定为许可证的管理员,并允许购买者使用购买者设备为许可证指派坐席或特定用户。可以被指派的坐席的数目受限于在许可证的条款下所允许的用户的具体数目。在客户机平台内,购买者可以具有与依据许可证授权的用户相同的身份。然而,购买者和用户可以在市场服务内具有不同的身份。而且,一些用户甚至可以在市场服务内不具有帐号或用户ID。而且,在一些实施例中,购买者可以基于特定用户设备的硬件标识,而不是基于具体用户来指派坐席或使用权。
[0042] 在一些实施例中,当特定用户试图使用用户设备借助许可证来安装应用时,客户机平台可以将权利令牌传回给市场服务。市场服务可以假设权利令牌足够复杂以避免对令牌的成功猜测,并且这样,可以将令牌视为与用户证书等价。随后可以从市场服务下载所述应用并在用户设备上安装。然而,当用户试图访问或运行该应用时,应用可以向支持该特定应用的第三方服务发送权利令牌。为了验证该用户设备是该应用的授权用户,第三方服务可以将权利令牌传递给市场服务。
[0043] 在框206,在市场服务处从第三方服务接受令牌。在框208,可以在市场服务内验证令牌的有效性。在市场服务内,可以使用令牌检查器来验证权利令牌的有效性。可以使用HMAC摘要来执行令牌的完整性检查。另外,可以检查令牌的到期日期来确保该令牌没有过期。在一个实施例中,为了检测和防止同一令牌的欺骗性重用,可以执行令牌审计。通过市场服务内的许可验证中心也可以证实许可证的有效性。而且,在一些实施例中,客户机平台自身可以通过令牌检查器来直接验证权利令牌的有效性。
[0044] 在框210,可以从市场服务向第三方服务返回消息,以便验证令牌的有效性。如果令牌检查器可以证实令牌的有效性,市场服务可以将有效消息发送给第三方服务。第三方服务随后判定是否允许用户设备访问该应用。
[0045] 如果第三方设备判定允许该用户设备访问所述应用,该应用内的特定等级可以随后开始例如通过客户机平台在用户设备上运行或在用户设备上运行。在各个实施例中,第三方服务还可以提供适合的服务的丰满度以支持用户设备上的应用。例如,如果正在购买的应用是可视化工具并且如果令牌是付费许可证,支持该应用的服务可以支持生成丰富的、高分辨率的、彩色的显影。如果该令牌是用于体验服务的,则支持该应用的服务可以支持生成有限缩放的、低分辨率、黑白的显影。
[0046] 应该理解方法200的框图不旨在指示方法200的各步骤要以任何特定次序来执行或者在每一种情况下都要包括所有的步骤。此外,根据具体的应用,步骤可被添加到方法200。例如,如果在框208没有验证令牌的有效性,可以从市场服务将消息返回给第三方服务以在框210拒绝令牌的有效性。另外,如果第三方服务判定该令牌是无效的,第三方服务可以拒绝用户设备访问应用,或者允许用户设备以减少功能的模式来运行应用。而且,如果令牌是无效的,支持应用的服务可以不支持生成任何显影,或可以为用户提供体验等级的支持。
[0047] 而且,在一些实施例中,可以周期性地验证应用的许可证的有效性,并且根据从购买者接收的通过购买者设备的对应用的另一个支付来续订许可证。可以以特定时间间隔更新权利令牌以便用新令牌取代旧令牌。然而,可以允许用户在指定的时间段内使用旧令牌来访问新令牌,以便防止用户被锁定在应用之外。在一些实施例中,如果购买者直接登录到市场服务,则可以调用当前的权利令牌。这可以允许购买者改变许可证的坐席指派或对许可证的条件做出任何其它想要的改变。
[0048] 在一些实施例中,可以由第三方服务使用方法200来验证用户访问电话服务的权利。方法200还可以被用于验证用户对存储应用或服务的使用权。而且,方法200可以被用于验证用户对游戏应用或服务的游戏内的信用和资源的权利。在各种实施例中,方法200还可以被用于验证对独立服务的权利,所述独立服务涉及独立于应用的特定服务的使用。
[0049] 图3A和3B是用于应用许可认证的消息流程图300的实施例,在其中,用户不必为了使用应用而登录到市场服务102。相同标号的项参考图1进行了描述。可以提示购买者通过权利处理中心124或者在一些实施例中通过参照图1所述的市场认证服务122(未示出)来登录到市场服务102。一旦购买者成功登录,购买者可以从购买者设备116向权利处理中心124发送应用的付费许可证的支付,或者购买者可以在权利处理中心124处请求应用的有时限的免费的体验许可证。可以提示购买者选择或输入许可证的想要坐席数目以及应用ID。在一些实施例中,还可以提示购买者输入许可证的预付款或订阅支付的时间周期。可以在权利存储数据库128处写许可证的权利。在一个实施例中,权利可以包括应用ID、购买者ID、购买的坐席数目或部署ID等等。而且,可以在权利处理中心124内为特定许可证生成权利令牌。
[0050] 一旦在权利处理中心124处已经生成了权利令牌,可以通过客户机平台104将令牌传递给购买者设备116。在各个实施例中,可以通过回调包含令牌的回调URI来传递令牌。随后,购买者设备116通过将权利令牌传回市场服务102内的权利处理中心124来启动应用的下载。权利处理中心124可以验证应用的令牌摘要和状态,并且可以将验证信息发送给权利存储数据库128。另外,可以通过权利存储数据库128来验证权利。为了记录用户的登录信息,可以生成登录日期戳。
[0051] 权利的验证可以被发回给权利处理中心124。一旦权利处理中心124接收到权利的验证,权利处理中心124可以调用应用下载储存库服务133以向权利处理中心124返回回调URI。权利处理中心124随后可以回调URI到在购买者设备116的浏览器中运行的店面120(未示出)。而且,一旦应用下载储存库服务133接收到权利的验证,服务133可以开始应用的下载。在一些实施例,这就立刻开始二进制应用的下载。在其它实施例中,返回到该应用的临时URI,并且客户机平台访问该URI以下载该应用。
[0052] 在购买者设备116的浏览器中运行的店面120可以请求来自市场服务102内的权利处理中心124的有关想要的应用的元数据。这样的元数据可以包括应用的图标、标题或名称。权利处理中心124可以将所请求的元数据发送给购买者设备116,并提示购买者设备116来指派许可证的坐席。随后,购买者设备116或可由许可证的购买者访问的其它任何设备可以将特定数目的坐席中每个坐席指派给客户机平台104内的一个特定用户。购买者设备可以将有关许可证的数据(例如应用ID以及权利令牌)以及应用的图标、标题和描述写入到客户机平台104内的许可证存储数据库134。另外,购买者设备116还可以将特定许可证的所指派的用户的列表写入到许可证存储数据库134。
[0053] 用户可以尝试根据许可证通过用户设备118访问应用。在用户设备118上运行的应用可以请求来自客户机平台内的许可证存储数据库134的权利令牌。随后,如果应用正由用户设备118本机运行则许可证存储数据库134将权利令牌返回给用户设备118,或者,如果应用正由用户设备118通过特定浏览器访问,则将权利令牌返回给该浏览器。随后,开始在用户设备118上加载应用。在一个实施例中,用户设备118可直接访问支持特定应用的第三方服务106以在不需要通过应用中心138的情况下允许用户设备118运行应用。
[0054] 在判定是否允许用户设备118访问应用之前,第三方服务可以执行初始评估以验证当前用户的数目没有超出许可证的坐席数目。如果满足该条件,第三方服务106可以将权利令牌发送回令牌检查器146。令牌检查器146可以执行评估过程以确定该令牌是有效还是无效的,并且可以通知第三方服务106所述评估的结果。如果确定权利令牌是有效的,则可以为用户设备118的会话高速缓存该权利。另外,如果确定权利令牌是有效的,第三方服务106可以允许用户设备118来开始该应用。然而,如果确定权利令牌是无效的,第三方服务106可以拒绝用户设备118访问该应用。
[0055] 图4A和4B是应用许可的消息流程图400的实施例,在其中,购买者也是用户。相同标号的项参考图1进行了描述。在这个实施例中,用户设备118(图1)通过应用中心138正在访问应用。购买者可以使用购买者设备116来通过市场服务102中的权利处理中心124以参照图3A和3B所描述的相同方式来购买应用的许可证。另外,权利令牌的生成和下载、令牌摘要和权利的验证以及将权利令牌返回给购买者设备116也可以以参照图3A和3B所描述的相同方式来执行。
[0056] 然而,购买者或其它用户可以通过应用中心138来访问应用,而不是参照图3A和3B所描述的将坐席指派给用户以及允许用户从用户设备118访问应用。因此,购买者设备
116可以尝试通过应用中心138来加载应用。在这一点处,可以将权利令牌传递给第三方服务106。第三方服务106可以验证当前用户的数目没有超出坐席数目。如果满足该条件,第三方服务106可以将权利令牌发送回令牌检查器146。令牌检查器146可以执行评估过程以确定该令牌是有效还是无效的,并且可以通知第三方服务106所述评估的结果。而且,在一些实施例中,第三方服务106可以基于被分开提供给第三方服务106的具体的用户ID信息来确定特定用户是否被授权使用权利令牌。如果确定权利令牌是有效的,则可以为购买者设备116的会话高速缓存该权利。另外,如果确定权利令牌是有效的,第三方服务106随后可以允许购买者设备116来通过应用中心138开始该应用。然而,如果确定权利令牌是无效的,第三方服务106可以拒绝购买者设备116访问该应用。
[0057] 图5是示出存储适用于认证第三方服务所支持的应用的许可证的代码的有形计算机可读介质500的框图。有形的计算机可读介质500可由处理器502通过计算机总线504进行访问。此外,有形的计算机可读介质500可包括被配置成指示处理器502执行当前方法的各步骤的代码。
[0058] 此处讨论的各种软件组件可被存储在有形的计算机可读介质500上,如图5中所指示的。例如,可以配置权利处理模块506以处理来自购买者设备的对付费许可证的支付,或授权特定应用的免费体验许可证,以及将权利令牌发送回购买者设备。可以配置权利存储模块508以存储与特定许可证有关的信息,包括例如所购买的坐席的数目、应用ID、部署ID或购买者ID或它们的任意组合。可以配置令牌检查器和许可证验证模块510来验证权利令牌和许可证的完整性以确保它们是有效且未到期的。另外,可以配置许可证续订模块512以根据通过客户机平台接收的来自购买者设备的额外支付来续订到期的许可证。
[0059] 应该理解,图5的框图不旨在指示有形的计算机可读介质500通常包括所有软件组件506、508、510和512。此外,有形的计算机可读介质500可包括图5中未示出的附加软件组件。例如,有形的计算机可读介质500还可包括配置用于存储特定许可证的回调URI以及涉及许可证的信息的应用下载储存库模块。
[0060] 尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。
高效检索全球专利

IPRDB是专利检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,专利查询、专利分析

电话:13651749426

侵权分析

IPRDB的侵权分析产品是IPRDB结合多位一线专利维权律师和专利侵权分析师的智慧,开发出来的一款特色产品,也是市面上唯一一款帮助企业研发人员、科研工作者、专利律师、专利分析师快速定位侵权分析的产品,极大的减少了用户重复工作量,提升工作效率,降低无效或侵权分析的准入门槛。

立即试用