CN104094271B - 授权过程的动态选择 - Google Patents

授权过程的动态选择 Download PDF

Info

Publication number
CN104094271B
CN104094271B CN201380006998.XA CN201380006998A CN104094271B CN 104094271 B CN104094271 B CN 104094271B CN 201380006998 A CN201380006998 A CN 201380006998A CN 104094271 B CN104094271 B CN 104094271B
Authority
CN
China
Prior art keywords
application
authorization
key
server
user
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
CN201380006998.XA
Other languages
English (en)
Other versions
CN104094271A (zh
Inventor
G·阿克塞洛德
T·谢
S·库特泽伯恩
G·哈迪
S·加格
C·舒尔茨
K·李
R·唐纳
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 Corp
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 Corp, Microsoft Technology Licensing LLC filed Critical Microsoft Corp
Publication of CN104094271A publication Critical patent/CN104094271A/zh
Application granted granted Critical
Publication of CN104094271B publication Critical patent/CN104094271B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/105Arrangements for software license management or administration, e.g. for managing licenses at corporate level
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/128Restricting unauthorised execution of programs involving web programs, i.e. using technology especially used in internet, generally interacting with a web browser, e.g. hypertext markup language [HTML], applets, java
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/107License processing; Key processing
    • G06F21/1073Conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本文公开了用于使用基于与应用的发起相关联的条件动态标识的优选授权过程来许可应用的系统、方法和软件。随后使用优选授权过程来试图授权。在一些示例中,从至少无密钥授权过程和基于密钥的授权过程中选择优选授权过程。

Description

授权过程的动态选择
背景技术
在软件许可技术领域中,限制对软件的未经授权的使用的追求常常与以用户友好的方式来部署软件的期望存在紧张的关系。一般地,许可机制越安全,则对于用户可能期望与应用交互的各种方式而言该许可机制就越没有容纳性。相反,在改变用户行为模式方面较灵活的许可机制可能提供低于所期望的针对未经授权使用的保护。
例如,用户已经变得越来越习惯于从各种位置和平台来访问所有类型的软件应用,同时享受如同他们在本地工作那样地同样丰富的特征和体验。用户可能时常工作于他们的台式计算机上的应用,随后远离该台式计算机到移动设备或另一个人的计算机上。用户还享受在启动或安装应用之后几乎立即使用这些应用的能力。
尽管一些软件供应商已经简单地放弃了试图平衡实施与便利而是选择两者中的任一个,但还是采取了许多方法来解决这一动态问题。一些方法涉及基于用户身份来授权应用的登录规程,而其他方法涉及复杂的密钥管理范例。然而,只要应用环境和使用模式继续不断演进,提供软件应用的灵活且安全的许可的挑战将持久存在。
概览
本文提供了通过在发起应用时动态选择优选授权过程来提供灵活的许可实施的系统、方法和软件。该优选授权过程可基于应用发起周围的条件来选择,诸如该应用在其中被发起的环境或者安装过程的进度。通过动态标识并试图使用优选授权过程,用户将享受从他们选择的任何位置或设备的许可访问,并且在启动或安装应用不久之后就能够是生产高效的。仍然可以部署保护软件供应商的利益的许可机制。
例如,当应用从漫游环境中被发起时,可以选择无密钥授权过程来授权对应用的使用。相反,在其它条件下可以选择基于密钥的授权过程。这允许用户无论是工作于本地安装和授权的应用副本还是远离他们的计算机来工作都能享受对应用的使用。
在另一示例中,当基于密钥的授权按过程不可用时,应用可使用无密钥授权过程被临时授权。这允许用户在购买应用之后立即就是生产高效的,而不是延迟对应用的享受直到已经安装了基于密钥的授权过程。
提供本概览以便以简化形式介绍将在以下的技术公开中进一步描述的概念选择。本概览并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限定所要求保护的主题的范围。
附图简述
参考以下附图可以更好地理解本发明的许多方面。虽然结合这些附图描述了几种实现,但所述公开并不局限于在此所述的这些实现。相反,意图是要覆盖所有的替换方式、修改和等价物。
图1解说了在一种实现中的授权系统。
图2是解说授权系统的操作的流程图。
图3解说了在一种实现中的授权系统。
图4解说了授权系统的功能视图。
图5解说了授权系统的操作序列。
图6解说了授权系统的功能视图。
图7解说了授权系统的操作序列。
图8解说了授权系统的功能视图。
图9解说了授权系统的操作序列。
图10是描述授权系统操作的流程图。
技术公开
本文描述的各实现提供了灵活的许可实施,因为能够基于遵循许可的应用操作周围的条件来采用优选授权过程。这一灵活性将允许用户在各种各样的情况下有权享受对应用的使用,而不会受到麻烦且不方便的许可机制的阻碍。同时,软件生产者将仍然受到保护免受非法应用使用及其相关联的损害。
在选择优选授权过程时纳入考虑的一些条件包括应用在其中被执行的运行时环境、可以从中选择优选过程的各种授权过程的可用性、应用朝向完全安装状态作出的进度、以及许多其它条件和因素。响应于这些变化的条件,许可客户端可以选择恰适的授权过程,其将以最终提供应用被授权的确认的方式来加速用户访问。
例如,用户可以订阅或以其它方式被授权使用应用,但暂时地离开用户的计算机。用户可以通过web浏览器来访问文档,从而触发应用的实例。与应用集成的或者与应用分开的许可客户端选择优选授权过程来授权用户使用该应用。在该示例中,在漫游会话期间,用户可经由无密钥授权过程被临时授权以使用应用,而非向用户请求密钥并且经由基于密钥的过程来授权。
在另一示例中,用户可通过在线应用商店来购买应用。在应用正在向用户的计算机下载的同时,可以通过在购买期间或早前的在线会话期间用户提供的用户身份来授权应用。在应用的一些部分(诸如接受、验证、以及保护基于密钥的授权过程所使用的密钥的安全所必须的组件)仍然要被下载和安装的同时,用户能够立即开始高生产力地工作于应用。
在又一示例中,用户可以在其中授权密钥可用并且在其中通过其来授权应用的基于密钥的过程也可用的环境中启动应用。在该场景中,可以通过将密钥应用于基于密钥的过程来解锁应用来以传统方式授权应用。
在这些场景中,许可客户端在应用发起时被触发并且标识在各条件下优选的授权过程。根据优选过程来授权应用,从而允许用户尽可能快地访问应用同时保护软件生产商。
提供图1-2来解说授权系统100及其操作的一种实现。图1描绘了授权系统100的各元素,而图2解说了描述授权系统100的操作的过程200。
现在参考图1,授权系统100包括处理系统101和存储系统103。软件105被存储在存储系统103上并且包括应用109和许可客户端111。当由处理系统101执行时,许可客户端111选择要实现授权过程113和授权过程115中的哪一个,如将在下文参考图2更详细地讨论的。
应用109可以是能够在授权系统100内运行的任何类型的计算机应用。应用109的示例包括生产力应用、娱乐应用、通信应用、和开发应用、以及任何其它类型的应用。许可客户端111可以是应用109的集成组件,但也可以是独立应用。替换地,许可客户端111可与软件105内的其它元素集成,诸如操作系统软件。
授权过程113和授权过程115可以各自是能够确定是否要授权应用以供使用的任何过程。授权过程113和授权过程115可以各自由单个设备执行,但也可以跨若干设备分布。应当理解,除了授权过程113和115以外的其它授权过程也是可能的。
转向图2,过程200描述了在一种实现中授权系统100的操作,并且更具体地,在应用109被发起时许可客户端111的操作。例如,应用109可以从浏览会话中被启动、被本地地启动、或者作为安装过程的一部分来发起。
在发起应用109时,许可客户端111标识与应用109的发起相关联的条件(步骤201)。如上所提及的,这些条件可涉及应用109在其中被启动的环境、授权过程113和115中的一者或另一者的存在或可用性、或者安装过程的进度。可被许可客户端111标识并且在选择优选授权过程时纳入考虑的其它因素或条件也是可能的。
许可客户端111可以用各种各样的方式来确定与应用109的发起相关联的条件。例如,许可客户端111可以读取存储在存储器中标识了应用109要在其中被发起的环境的值。该值可由用于启动应用109的引导器应用或者由知晓应用109在其中被启动的环境的某一其它应用来设置。
替换地,许可客户端111可以查询另一应用(无论其驻留在本地还是远程)以获取关于执行环境的信息。在另一替换方案中,许可客户端111可以查询某一其它应用或操作系统元素以确定其正在其中运行的上下文。许可客户端111还可查询操作系统组件以确定应用109的安装先前是否已经发生。应用109在其中被发起的环境可以从与应用109并发运行的应用中得以显现,诸如web浏览器应用。从而,许可客户端111可以查询这些其它应用以确定运行时条件。
基于步骤201中标识的条件,许可客户端111从授权过程113和授权过程115中选择要用其来授权应用109的优选授权过程(步骤203)。应当理解,许可客户端111可以从不仅仅授权过程113和115的授权过程中进行选择。哪个过程被选为优选授权过程可以由传达给许可客户端111的条件来驱动。例如,在上文给定的示例中,特定的值或特定范围的值可以驱动许可客户端111选择和利用授权过程113,而不同的值或不同范围的值可以驱动许可客户端111选择和使用授权过程115。
许可客户端111随后试图使用授权过程113和115中作为优选授权过程的那个来授权应用109(步骤205)。如所提及的,授权过程113和115可以各自由授权系统100实现,但也可以用涉及其它设备的分布式方式来实现。实现授权过程113和115中的每一个还可涉及本地地执行每一过程的一些部分并且远程地执行其它部分。
在实现优选授权过程时,许可客户端111学习至少针对应用的该实例是否授权对应用109的使用。取决于选择了哪一个授权过程,应用109可能仅仅被临时授权,但也可能被永久授权,以及被授权持续某一其它使用历时。一旦应用109被永久授权,可以执行周期性检查以确保应当维持其授权。同样地,对应用109的升级或者对其的其它改变可能影响其授权状态。
假定应用109被授权,用户能够开始变得高生产力,诸如通过工作于使用生产力应用109生成的文档或电子表格、参与通信会话、或参与游戏会话等。如果授权失败,则用户可能被完全阻止使用应用109。然而,应用109也可以按向用户提供对其能力的有限使用的减少功能模式来呈现。替换地,授权可以被授予持续一宽限期,从而允许用户在有限时间量内享受完整功能。从失败授权得出其它的结果也是可能的,并且被认为落在本公开的范围内。
回头参照图1,授权系统100和相关联的讨论旨在提供对其中可实现过程200的合适计算环境的简要概括描述。可以采用计算设备和软件计算系统的许多其它配置来实现过程200。
授权系统100可以是能够动态地标识要用其来授权应用的优选授权过程的任何类型的计算系统,诸如客户端计算机、服务器计算机、因特网设备或其的任何组合或变体。实际上,授权统100可以被实现为单个计算系统,但也可以跨多个计算系统以分布式方式来实现。授权系统100可以作为通用计算系统的示例来提供,当执行过程200时,该通用计算系统变成能够动态选择优选授权过程的专用系统。
授权系统100包括处理系统101、存储系统103和软件105。软件105包括应用109和许可客户端111。处理系统101与存储系统103通信上耦合。存储系统103存储软件105以及具体地许可客户端111,当其由处理系统101执行时引导授权系统100如过程200所描述的那样操作。
还是参考图1,处理系统101可以包括从存储系统103中检索并执行软件105以及更具体地应用109和许可客户端111的微处理器以及其他电路系统。处理系统101可以在单个处理设备中实现,但也可以跨在执行程序指令中协作的多个处理设备或子系统分布。处理系统101的示例包括通用中央处理单元、专用处理器以及逻辑设备,和任意其他类型的处理设备。
存储系统103可以包括可由处理系统101读取并能存储软件105(包括应用109和许可客户端111)的任意存储介质。存储系统103可包括易失性和非易失性、可移动和不可移动介质,它们以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据这样的信息的任意方法或技术来实现。存储系统103可以被实现为单个存储设备,但也可以跨多个存储设备或子系统来实现。存储系统103可以包括附加元件,诸如能够与处理系统101通信的控制器。
存储介质的示例包括随机访问存储器、只读存储器、磁盘、光盘以及闪存,和它们的任意组合或变型,或任意其他类型的存储介质。在一些实现中,存储介质可以是非瞬态存储介质。在一些实现中,至少一部分存储介质可以是瞬时的。应该理解,存储介质决不是被传播的信号。
软件105(具体地包括应用109和许可客户端111)包括计算机程序指令、固件或某一其他形式的其中实现过程200的机器可读的处理指令。应用109和许可客户端111可以被实现为单个应用,但也可以被实现为多个应用。应用109和许可客户端111可以是单独的应用,但也可以在分布在多个设备上的其他应用内实现,所述其他应用包括但不限于程序应用软件和操作系统软件。如所提及的,许可客户端111可实现在应用109内。
一般地,当被加载到处理系统101中并被执行时,软件105可以将处理系统101以及整个授权系统100从通用计算系统变换为专用计算系统,所述专用计算系统被定制为如过程200及其相关联的讨论所述来动态选择用于应用的优选授权过程。
对软件105以及更具体地应用109和许可客户端111进行编码也可变换存储系统103的物理结构。在本说明书的不同实现中,物理结构的具体变换可取决于各种因素。这些因素的示例包括但不限于:用于实现存储系统103的存储介质的技术、计算机存储介质被表征为主存储还是次级存储,等等。
例如,如果计算机存储介质被实现为基于半导体的存储器,则当在其中编码软件时,软件105以及更具体地应用109和许可客户端111可以变换半导体存储器的物理状态。例如,软件105可以变换构成半导体存储器的晶体管、电容器或其它分立电路元件的状态。一种类似的变换可以相对于磁性或光学介质发生。在没有偏离本说明书的范围的情况下,物理介质的其他变换也是可能的,前面提供的示例只是为了便于这一讨论。
再次参考图1-2,通过采用许可客户端111的授权系统100的操作,对应用109执行这些变换。作为示例,应用109可以被认为由许可客户端111标识的优选授权过程从一种状态变换成另一状态。
授权系统100可以具有附加的设备、特征或功能。授权系统100可以可选地具有输入设备,诸如键盘、鼠标、语音输入设备或触摸输入设备以及其它类似输入设备。还可以包括输出设备,诸如显示器、扬声器、打印机和其它类型的输出设备。授权系统100还可以包含允许授权系统100诸如通过分布式计算和通信环境中的有线或无线网络与其他设备或系统通信的通信连接和设备。这些设备在本领域中公知且无需在此处详细讨论。
图3解说了一种实现中的授权系统300,而图4-9解说了授权系统300的若干功能视图以及与其操作有关的操作序列。具体地,图4和图5解说在漫游上下文中授权系统300的操作。图6和图7解说在安装上下文中授权系统300的操作,而图8和图9中解说的上下文涉及授权服务的不可用性。图10包含涉及由授权系统300实现的过程1000的流程图。图4-10加在一起演示了能够跨各种各样的上下文和环境灵活部署和实施的用于许可生产力应用309的机制。
图4-10中提供的功能视图、操作序列和流程图表示用于执行本公开的新颖方面的示例性架构和方法。尽管出于解释简明的目的,此处包括的方法以功能图、操作系列或流程图形式示出并且可被描述为一系列动作,但是可以理解和领会,各方法不受动作的次序的限制,因为根据本发明,某些动作可以按与此处所示并描述的不同的次序和/或与其他动作并发地发生。例如,本领域的技术人员将明白并理解,方法可被替换地表示为一系列相互相关联的状态或事件,诸如以状态图的形式。此外,并非方法中所示出的所有动作都是新颖实现所必需的。
现在参考图3,授权系统300包括用户302操作的客户端设备300。客户端设备300包括处理系统301、存储系统303、软件305、用户接口306、和通信接口307。软件305包括生产力应用309和许可客户端311。客户端设备300通过通信网络320与商务服务器321、应用服务器323、在线许可服务(OLS)服务器325、以及软件保护平台(SPP)服务器327通信。
商务服务器321向用户302提供应用购买能力。例如,用户102可能期望购买应用或订阅应用服务。利用客户端设备300,用户302能够通过商务服务器321获得应用。商务服务器321可以提供一些商务功能,诸如交易处理等等。
应用服务器323向用户302提供经由商务服务器321购买或订阅的应用的实例。应当理解,应用服务器323和商务服务器321可以分开地实现,但也可以用集成方式来实现。应用服务器323能够用各种各样的方式向客户端设备300提供生产力应用309,诸如通过将生产力应用309下载到客户端设备300或者将生产力应用309流传输到客户端设备300。应用服务器323也可在各种各样的上下文中采用,诸如在托管服务中。应当理解,应用服务器323仅仅表示可被用来将应用流传输或下载到客户端设备300的许多应用服务器。
OLS服务器325用于提供客户端设备300可访问以获得生产力应用309的授权的授权服务。类似地,SPP服务器327用于向客户端设备300提供授权服务。具体地,OLS服务器325与许可客户端311通信以实现授权过程,而SPP服务器327也与许可客户端311通信但实现与OLS服务器325所提供的不同授权过程。例如,SPP服务器327可以实现涉及使用产品密钥的基于密钥的授权过程,而OLS服务器325可以实现无密钥授权。接下来参考图4-9进行关于许可客户端311与OLS服务器325和SPP服务器327之间的交互的更详细的讨论。
客户端设备300可以是能够执行生产力应用309和许可客户端311的任何类型的设备,诸如台式机、膝上型计算机、平板计算机、以及移动计算设备、因特网电气设备、或适于运行应用的任何其它类型的设备。对图3-10的讨论是在生产力应用的上下文中,但应当理解,此处公开的各概念也能适用于遵循要求某种形式的授权的许可约束的任何类型的应用。
图4解说了在漫游上下文中操作的授权系统300的功能视图400。功能视图400包括生产力应用309在其中执行的浏览器应用308。内容310被包括以演示可以使用生产力应用309来工作于或以其它方式产生内容,诸如文字处理文档、电子表格、演示等等。
在该实现中,生产力应用309被认为是在漫游环境中以漫游模式来发起的,因为它从应用服务器323流传输至浏览器应用308。另外,当生产力应用309在目标计算机上尚未被授权时可被认为生产力应用309以漫游模式来发起。例如,用户可能想要工作于未安装在正在使用的计算机上的生产力应用,并且因而经由能够流传输该生产力应用或者以其它方式给予用户对该应用的临时使用的应用服务器来访问该生产力应用。相反,在主机计算机上完整安装并被许可的生产力应用可以被认为本机地运行在该计算机上。从而,在该情景中对生产力应用的本机使用将不会被认为是漫游情景。
出于解说图4和图5的目的假定生产力应用309先前未安装在客户端设备300上并且因而必须被流传输。另外,假定客户端设备300最初未被授权在漫游上下文内运行应用309,从而要求许可客户端311来尝试授权。
如所提及的,应用服务器323可在当访问相关联的内容时可从中启动应用的托管服务内实现,诸如web邮件服务或云存储服务。在该情形中,内容310也可初始地驻留在托管服务内。通过点击内容310或者通过浏览器应用308以其它方式来选择内容310,应用服务器323被触发以启动与内容310相关联的应用的实例,在它从应用服务器323流传输时该实例变为生产力应用309。例如,内容310可以是能够用文档编辑器(诸如 Word)打开的文档。Word可以使用任何公知的流传输技术来流传输以便打开文档,诸如提供的Click-2-Run平台。应当理解,除了经由试图参与内容310之外的其它动作也可以触发应用服务器323启动期望应用的实例。例如,用户可能试图在托管服务内打开新的文档,从而触发相关联的应用。
如所指示的,用户302可以在参与与应用服务器323的会话时或者通过浏览器应用308提供的某一其它会话时提供用户标识符(ID)314。在发起生产力应用309之前或当时能够通过用户接口306向用户302提示输入用户ID314。然而,用户ID314也可由浏览器应用308在与托管服务或某一其它服务的早前会话期间存储。在该情形中,浏览器应用308可以将用户ID传递给许可客户端311。可以要求用户302输入除了用户ID314之外的其它信息,诸如口令或个人标识号。事实上,可以采用任何恰适机制来标识用户302。
许可客户端311将用户ID314传达给OLS服务器325,响应于此,OLS服务器325可以提供对生产力应用309的授权。OLS服务器325处理用户ID314以确定用户302是否被授权使用生产力应用309。这范围可能从相对简单的过程(从授权用户列表中查找用户302的身份)到执行较复杂的处理(涉及用户ID314和其它信息,包括例如口令)。
用户302可以出于多种原因被授权,包括在另一计算机上购买或安装了生产力应用309、订阅允许用户302使用生产力应用309的应用服务、或者属于已经授权访问生产力应用309的组织。用户302可被授权的其它原因也是可能的并且被构想在本公开的范围内。
图5解说涉及功能视图400中提供的各组件的操作序列500。作为开始,浏览器应用308通过与应用服务器323通信来发起生产力应用309。这可以通过多种方式来触发,诸如用户302点击托管服务内提供的链接。如上所提及的,托管服务可以包含在被选中时触发应用的启动的文件,诸如文档处理文档、电子表格等。
响应于由浏览器应用308发起的通信,应用服务器323将生产力应用309流传输给浏览器应用308以供呈现给用户302。这可以通过任何合适的应用流传输技术来实现,诸如Click-2-Run。内容310可与流传输的应用比特一起包括,或者内容310可以单独地下载到客户端设备300。浏览器应用308运行生产力应用309,包括许可客户端311。
生产力应用309在其中执行的环境驱动OLS服务器325和SPP服务器327所支持的授权过程中作为优选授权过程的那一个来授权生产力应用309。在这一场景中,引导器应用可以伴随生产力应用309的启动来执行,该引导器应用一般与来自应用服务器323的应用的发起相关联。引导器尤其能够在存储器中设置指示生产力应用309将在其中运行的环境的值。在该情形中,该值被设置为指示环境是漫游环境。当生产力应用309启动时,该值驱动生产力应用309与OLS服务器325通信以获得授权或者生产力应用309与SPP服务器327通信以获得授权。在生产力应用309(许可客户端311)内运行的代码检查该值并且作为响应开始OLS服务器325支持的授权过程或者SPP服务器327支持的授权过程。
基于生产力应用309被发起所处的条件,引导器应用的多个版本可供部署。例如,当生产力应用309从托管服务(诸如web邮件或云驱动服务)发起时,应用服务器323可以部署将值设置为将环境标识为漫游的引导器应用版本。然而,当生产力应用309从不同上下文或环境(诸如安装场景)内发起时,可以使用将值设置为将环境标识为安装的不同的引导器应用。
在确定生产力应用309正在漫游时,许可客户端311将对应用服务器323的授权请求传送给OLS服务器325,该授权请求包括与用户302相关联的用户ID314。OLS服务器325处理该请求并且返回对生产力应用309的无密钥授权,从而允许用户302参与并使用生产力应用309。
替换地,引导器应用可能知晓生产力应用309将在其中被部署的环境,并且因而能够相应地设置值以向生产力应用309指示漫游。引导器应用能够通过与在相同环境内执行的其它应用(诸如浏览器应用309)通信或者可能与操作系统元件通信而变得知晓该环境以确定生产力应用309将在其中执行的环境。
无密钥授权可以是由生产力应用309识别的电子许可证,诸如与生产力应用309的下载中提供的许可文件相对应的激活配置标识符(ACID)。正确的ACID可被识别为对完全访问有效,这可被认为是有效授权。在用户302未被授权的情况下,OLS服务器325可以返回如此指示的指示。生产力应用309随后可以禁用某些特征并且在减少功能模式中运行。然而,生产力应用309简单地完全限制访问也是可能的。在一个示例中,ACID由OLS服务器325返回,其可以表示用户302是否被授权能够完全访问生产力应用309。尽管一个ACID可被识别为对完全访问有效,这可被认为是有效授权,但另一ACID可向生产力应用309指示应当向用户302仅提供有限功能,这可被认为是授权拒绝。替换地,授权拒绝可由来自OLS服务器325的响应指示,该响应根本不提供任何ACID或者提供未被许可客户端311识别的ACID。作为响应,许可客户端311可以提示用户302索要不同凭证或者输入密钥的选项。如果用户拒绝提供正确的凭证,则生产力应用309可被关闭。
无密钥授权向用户302提供对生产力应用309的临时访问。在一些情形中,用户302在无密钥授权下可仅被授予对生产力应用309的一次性使用。在一示例中,生产力应用309可被授权持续用户与内容310交互或者用户与应用309交互的历时。例如,即便在关闭内容310时,应用309可以保持打开和活跃,从而允许用户302创建新的文档或者打开和使用其它文档。在关闭应用309时,对于用户302将停止生产力应用309的授权。
授权被称为是无密钥的,这是因为OLS服务器325所支持的授权过程不使用密钥来确定是否允许对生产力应用309的访问。相反,SPP服务器327要求密钥作为验证过程的输入。该验证过程对密钥进行操作以确定其有效性,并且由此确定作出的访问生产力应用的请求的有效性。密钥的示例包括伴随许多常见软件购买提供的熟悉的5x5产品密钥。
图6解说了在下载和安装上下文中操作的授权系统300的另一功能视图600。功能视图600包括安装过程312、生产力应用309和许可客户端311。功能视图600演示生产力应用309在其中被购买并被安装在客户端设备300上的安装环境。
在功能视图600中,生产力应用309从应用服务器323下载。这作为用户302在与商务服务器321交互时作出的购买的结果而发生。商务服务器321向OLS服务器325提供购买的通知。通知的一部分可以可能通过用户ID314来标识用户302。OLS服务器325向应用服务器323传递通过用户ID314与用户302相关联的令牌。将令牌绑定到具体的用户身份帮助OLS服务器325在必要时对用户302进行授权。
商务服务器321还向应用服务器323提供购买的通知,这最终启动下载过程以将生产力应用309下载到客户端设备300。如所提及的,OLS服务器325向应用服务器323提供令牌,由此允许应用服务器323连同生产力应用309的下载一起来提供令牌。许可客户端311向OLS服务器325传达令牌和用户ID314以试图对生产力应用309进行授权。许可客户端311还参与SPP服务器327以使用密钥来授权生产力应用309,这将参考图7更详细地描述。
现在参考图7,解说了涉及功能视图600中提供的各组件的操作序列700。该序列开始于购买生产力应用309。响应于该购买,向OLS服务器325通知该购买,并且OLS服务器325响应于此向应用服务器323提供令牌。从应用服务器323下载生产力应用309以供安装在客户端设备300上。令牌连同生产力应用309一起下载。
在生产力应用309的安装期间,许可客户端311必须确定要使用哪个授权过程来授权生产力应用309。简单来说,许可客户端311可以取决于生产力应用309的安装和执行周围的条件来使用SPP服务器327支持的基于密钥的授权过程或者OLS服务器325支持的无密钥授权过程。安装过程312作出的进度可以是管控使用哪个安装过程的一个因素。例如,生产力应用309中支持基于密钥的过程的部分在请求授权时可能尚未被下载并且安装。代替对生产力应用309的延迟访问,许可客户端311可以改为试图通过OLS服务器325支持的无密钥授权过程来获得授权。
SPP服务器327支持的授权过程的可用性可由许可客户端311用多种方式来确定。如参考图4和5所讨论的,可以用生产力应用309的下载来部署引导器应用以在存储器中设置指示基于密钥的授权过程的存在或缺席的值。许可客户端311随后可以读取该值,该值驱动其对优选授权过程的选择。替换地,安装过程312本身可以追踪安装进度并将进度传达给许可客户端311。许可客户端311随后可以基于由安装过程312向其报告的安装进度来选择任一个授权过程。应当理解,可以部署许多其它合适的机制来向许可过程311通知生产力应用309的执行周围的环境或条件。
在操作序列700中,出于示例性目的假定许可客户端311选择用无密钥授权过程来试图授权生产力应用309。作为结果,向OLS服务器325作出授权请求以授权对生产力应用309的使用。令牌被包括在该请求中并且被OLS服务器325处理以验证客户端设备300作为生产力应用309的经授权目的地。还可以连同令牌一起提供用户ID314以补充由OLS服务器325执行的授权过程。OLS服务器325响应于此提供无密钥授权,该无密钥授权提供对生产力应用309的临时授权。此时,生产力应用309被解锁并且对用户302可用,即便安装过程可能尚未完成。这允许用户302在购买之后快速地使用生产力应用309而不用延迟直到完成完整安装。
如参考图5所提及的,无密钥授权可以是由生产力应用309识别的电子许可证,诸如激活配置标识符(ACID)。正确的ACID可被识别为对完全访问有效,这可被认为是有效授权。在用户302未被授权的情况下,OLS服务器325可以返回如此指示的指示。生产力应用309随后可以禁用某些特征并且在减少功能模式中运行。然而,生产力应用309简单地完全限制访问也是可能的。许可客户端311可以提示用户不同的凭证,并且如果用户拒绝提供正确凭证可以关闭生产力应用309。
OLS服务器325还可向生产力应用309提供能在稍后(一旦生产力应用309的安装已经完成)使用以获得更长久的基于密钥的授权的密钥。可能花费比其它部分更长时间来安装的一些部分包括SPP客户端,SPP客户端与SPP服务器327对接以提供基于密钥的授权功能。生产力应用309最终使用密钥向SPP服务器327请求授权,响应于此,SPP服务器327可以提供授权。
图8解说考虑了涉及无可用授权过程的一种实现的授权系统300的又一功能视图800。功能视图800包括生产力应用309和许可客户端311。许可客户端311必须确定要使用哪个授权过程来授权生产力应用309。在该示例中,管控这一决策的因素包括SPP服务器327的可用性。如图所示,SPP服务器327不可用,从而驱动许可客户端311与OLS服务器325通信以试图授权。相应地,许可客户端311通过交换凭证和授权的方式与OLS服务器325通信。
SPP服务器327可能出于多种原因而不可用。例如,SPP服务器327可能出于维护或升级而临时停止服务。允许许可客户端311与SPP服务器327通信的通信链路可能停止服务也是可能的。无论如何,SPP服务器327可能再次在线,最终允许基于密钥的授权,如下文将参考图9所讨论的。
参考图9,解说了涉及功能视图800中提供的各组件的操作序列900。在该序列中,生产力应用309试图通过许可客户端311使用来自SPP服务器327的密钥来获得授权。然而,如所指示的,SPP服务器327最初不可用。作为结果,许可客户端311使用与用户302相关联的用户ID314向OLS服务器325请求授权。许可客户端311还可与OLS服务器325交换令牌,如参考图7所讨论的。
OLS服务器325作为响应提供给予用户302对生产力应用309的临时访问的授权。如参考图5所提及的,无密钥授权可以是由生产力应用309识别的电子许可证,诸如激活配置标识符(ACID)。授权拒绝可以由来自OLS服务器325的根本不提供ACID或者ACID不被许可客户端311识别或者以某一其它方式提供未经授权使用的指示的响应来指示。作为响应,许可客户端311可以提示用户提供不同的凭证,并且如果用户拒绝提供正确凭证可以关闭生产力应用309。
OLS服务器325提供的无密钥授权允许生产力应用309运行并且因而给予用户302成为高生产力的能力,即便SPP服务器327不可用。同时,生产力应用309可以继续向SPP服务器327请求永久的基于密钥的授权。一旦SPP服务器327变得可用,它可以基于生产力应用309所提供的密钥是否是有效密钥来提供授权。SPP服务器327提供的授权可以是永久授权,但应当理解,在本讨论的上下文内可以发生周期性的授权检查或密钥重新分配。
图10解说可由在客户端设备300上执行的许可客户端311实现的过程1000。过程1000是示例性的许可客户端311可如何从若干授权过程中选择或标识要用其来试图授权生产力应用309的优选授权过程。
参考过程1000,生产力应用309开始,其可在应用被安装时、应用从浏览器内启动时、应用在本地发起时、或者通过任何其它类似的方式来发起应用时发生(步骤1001)。应当理解,发起生产力应用309可以采用实际地运行包括该应用的可执行文件的形式。然而,运行其它可执行文件(诸如引导器)也可表示发起应用。用户302在链接或托管文档上点击并进而启动应用也可表示发起生产力应用309。
接着,许可客户端311确定其是否处于漫游模式(步骤1003)。许可客户端311可以通过检查存储器中设置的指示生产力应用309的漫游状态的值来完成该确定。替换地,许可客户端311可以与其它应用或操作系统组件通信以确定生产力应用309的漫游状态。在任何情形中,当从托管服务启动并被流传输到客户端设备300时,生产力应用309可以被一般地认为正在漫游。这可能在生产力应用309未被本地安装并且因而必须从其它地方提供时发生。作为确定其是否处于漫游模式的一种替换,许可客户端311可以检查OLS服务器325或者更一般地无密钥授权过程是否可用。
如果应用309处于漫游模式,则经由OLS服务器325执行授权(步骤1005)。如上文详细讨论的,OLS服务器325使用各种各样的输入来授权生产力应用309,诸如用户ID314、令牌、或向OLS服务器325标识用户302的其它合适方式。如果用户302被授权使用生产力应用309,则OLS服务器325将这一信息传达给许可客户端311并且向用户302提供生产力应用308的完整功能。如果用户302未被授权,则OLS服务器325可以将拒绝传达给许可客户端311,许可客户端311随后采取动作要么以某种其它方式授权用户302要么完全或部分地限制用户302访问生产力应用309。
如果应用309不处于漫游模式或者如果OLS服务器325以其它方式不可用,则许可客户端311检查SPP服务器327是否可用(步骤1007)。许可客户端311可以用各种各样的方式来确定SPP服务器327的可用性,包括试图与SPP服务器327通信。替换地,许可客户端311可以试图与可能安装在客户端设备300上的SPP模块通信。SPP模块的存在会向许可客户端311指示SPP服务器327所提供的授权服务可能是可用的。SPP模块的缺失可能向许可客户端311指示,生产力应用309中涉及基于密钥的授权服务的部分尚未被安装,并且因此致使基于密钥的授权服务不可用。
如果SPP服务器327不可用,则许可客户端311试图使用OLS服务器325支持的无密钥授权过程来获得授权(步骤1009)。OLS服务器325使用各种各样的输入来授权生产力应用309,诸如用户ID314、令牌、或向OLS服务器325标识用户302的其它合适方式。如果用户302被授权使用生产力应用309,则OLS服务器325将这一信息传达给许可客户端311并且向用户302提供生产力应用308的完整功能。否则,OLS服务器325可以将拒绝传达给许可客户端311,从而导致对生产力应用309的有限或阻塞访问。
然而,如果SPP服务器327可用,则许可客户端311与SPP服务器327通信以试图获得授权(步骤1011)。这可涉及将密钥传送到SPP服务器327以供处理。可以连同密钥一起提供其它标识信息,诸如用户ID314或与生产力应用309相关联的产品标识符,以协助SPP服务器327确定生产力应用309的授权状态。
应当理解,许可客户端311可以持续地监视SPP服务器327的可用性并且在情况改变时改变优选授权过程。例如,许可客户端311在生产力应用309发起时可初始地将无密钥授权过程选为优选授权过程。然而,在试图使用无密钥授权过程来进行授权的同时,SPP服务器327可能变得可用。这可以触发许可客户端311停止无密钥授权过程并且改为试图使用SPP服务器327所支持的基于密钥的授权过程来授权用户302。
回头参考图3,客户端设备300包括处理系统301、存储系统303、软件305、用户接口306、和通信接口307。用户接口306可包括鼠标、语音输入设备、触摸输入设备、以及其它类似输入设备和能够从用户302接收用户输入的相关联的处理元件。还可以包括输出设备,诸如显示器、扬声器、打印机和其它类型的输出设备。
处理系统301可以与存储系统303通信上耦合。存储系统303存储软件305以及更具体地存储生产力应用309和许可客户端311。软件305可包括其它应用,诸如图4和图6中分别解说的浏览器应用308和安装过程312。当由处理系统301执行时,生产力应用309和许可客户端311引导客户端设备300按照如此处参考图4-10所描述地来操作。
处理系统301可包括从存储系统303检索和执行生产力应用309和许可客户端311的微处理器和其它电路系统。处理系统301可以在单个处理设备中实现,但也可以跨在执行程序指令中协作的多个处理设备或子系统分布。处理系统301的示例包括通用中央处理单元、专用处理器、逻辑设备、以及任何其他类型的处理设备。
存储系统303可以包括可由处理系统301读取并能存储生产力应用309和许可客户端311的任意存储介质。存储系统303可包括易失性和非易失性、可移动和不可移动介质,它们以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据这样的信息的任意方法或技术来实现。存储系统303可以被实现为单个存储设备,但也可以跨多个存储设备或子系统来实现。存储系统303可以包括附加元件,诸如能够与处理系统301通信的控制器。
存储介质的示例包括随机访问存储器、只读存储器、磁盘、光盘以及闪存,和它们的任意组合或变型,或任意其他类型的存储介质。在一些实现中,存储介质可以是非瞬态存储介质。在一些实现中,至少一部分存储介质可以是瞬时的。应该理解,存储介质决不是被传播的信号。
生产力应用309和许可客户端311包括计算机程序指令、固件、或某一其它形式的机器可读处理指令。生产力应用309和许可客户端311可以各自被实现为单个应用,但也可以被实现为多个应用或集成在一起。一般地,生产力应用309和许可客户端311在被加载到处理系统301中时,将客户端设备300从通用计算系统变换成专用计算系统,该专用计算系统定制成如针对授权系统300所描述的来操作。
通信接口307可包括允许客户端设备300与商务服务器321、应用服务器323、OLS服务器325和SPP服务器327之间的通信的通信连接和设备。加在一起允许系统间通信的连接和设备的示例包括网络接口卡、天线、功率放大器、RF电路系统、收发机以及其它通信电路系统。
客户端设备300通过通信网络320与商务服务器321、应用服务器323、OLS服务器325和SPP服务器327通信。通信网络320可以是能够承载客户端设备300与商务服务器321、应用服务器323、OLS服务器325和SPP服务器327之间的通信的任何网络或网络集合。上述网络、连接和设备在本领域中公知且无需在此处详细讨论。
所包括的说明和附图描述了用于教导本领域的技术人员如何做出和使用最佳模式的特定实现。出于教导创新性原则的目的,一些传统的方面被简化或忽略。本领域的技术人员将理解来自这些实现的变型也落入的本发明的范围内。本领域的技术人员还将理解如上所述的特征可以以各种方式组合以形成多个实现。因此,本发明不局限于如上所述的特定实现,仅受限于权利要求和它们的等价物。

Claims (6)

1.一种许可应用的方法,所述方法包括:
标识与应用的发起相关联的条件;
基于所述条件从至少基于密钥的授权过程和无密钥授权过程中选择用来授权所述应用的优选授权过程;以及
使用所述优选授权过程来试图授权所述应用,
其特征在于,所述条件包括所述应用的漫游状态和所述基于密钥的授权过程的安装状态,其中在所述漫游状态是正在漫游时将所述无密钥授权过程选为所述优选授权过程,并且在所述安装状态是未完成时将所述无密钥授权过程选为所述优选授权过程。
2.如权利要求1所述的方法,其特征在于,当用流传输的形式来提供所述应用时所述漫游状态是正在漫游。
3.如权利要求1所述的方法,其特征在于,进一步包括在所述基于密钥的授权过程的安装期间执行所述无密钥授权过程。
4.如权利要求3所述的方法,其特征在于,进一步包括实现所述无密钥授权过程,传送具有凭证的授权请求以递送至授权服务器,并且作为响应,接收提供对所述应用的临时访问的授权响应,其中所述凭证包括用户的身份以及在所述应用的安装期间提供的令牌中的至少一者。
5.一种用于许可应用的方法,所述方法包括:
标识应用在其中被发起的环境;
当所述环境是漫游环境时,发起漫游尝试以基于与所述应用相关联的用户身份来授权所述应用;
当所述环境不是漫游环境时,当执行密钥尝试的基于密钥的过程可用时发起基于密钥的尝试以基于与所述应用相关联的密钥来授权所述应用;以及
当所述基于密钥的过程不可用时,发起无密钥尝试以基于与所述应用相关联的用户身份来授权所述应用,
其特征在于,当所述应用从应用服务器流传输时,所述环境是漫游环境,并且,当在所述应用的安装期间所述应用不是从应用服务器流传输时,所述环境不是漫游环境,
其特征还在于,所述应用包括执行所述基于密钥的尝试以授权所述应用的基于密钥的授权过程,并且其中所述无密钥尝试以授权所述应用发生在所述基于密钥的授权过程的安装之前。
6.如权利要求5所述的方法,其特征在于,所述应用包括无密钥授权过程,所述无密钥授权过程执行所述无密钥尝试以授权所述应用并且执行所述漫游尝试以授权所述应用。
CN201380006998.XA 2012-01-26 2013-01-21 授权过程的动态选择 Active CN104094271B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/359,241 2012-01-26
US13/359,241 US8555402B2 (en) 2012-01-26 2012-01-26 Dynamic selection of authorization processes
PCT/US2013/022356 WO2013112393A1 (en) 2012-01-26 2013-01-21 Dynamic selection of authorization processes

Publications (2)

Publication Number Publication Date
CN104094271A CN104094271A (zh) 2014-10-08
CN104094271B true CN104094271B (zh) 2017-03-22

Family

ID=48871551

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380006998.XA Active CN104094271B (zh) 2012-01-26 2013-01-21 授权过程的动态选择

Country Status (4)

Country Link
US (3) US8555402B2 (zh)
EP (1) EP2807596B1 (zh)
CN (1) CN104094271B (zh)
WO (1) WO2013112393A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016081609A1 (en) * 2014-11-19 2016-05-26 Eyelock Llc Model-based prediction of an optimal convenience metric for authorizing transactions
EP3062255A1 (de) * 2015-02-25 2016-08-31 Siemens Aktiengesellschaft Lizensierung von Softwareprodukten
US11244031B2 (en) * 2017-03-09 2022-02-08 Microsoft Technology Licensing, Llc License data structure including license aggregation
CN111639311A (zh) * 2020-05-29 2020-09-08 杭州安恒信息技术股份有限公司 防止反编译可执行文件的方法、装置、计算机设备和介质
WO2023086298A1 (en) * 2021-11-10 2023-05-19 Entegris, Inc. Molybdenum precursor compounds

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030078892A1 (en) * 2001-10-22 2003-04-24 East Daniel V. System, method and computer program product for a fail-safe start-up mechanism for clients of a license server
US20110083178A1 (en) * 2009-10-01 2011-04-07 Yamaha Corporation Controlling activation of an application program in an audio signal processing system
CN102016861A (zh) * 2008-02-28 2011-04-13 霍尼韦尔国际公司 以断开或间歇连接的模式运行的软件许可证管理系统

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6510466B1 (en) * 1998-12-14 2003-01-21 International Business Machines Corporation Methods, systems and computer program products for centralized management of application programs on a network
US20020107809A1 (en) 2000-06-02 2002-08-08 Biddle John Denton System and method for licensing management
US7266594B2 (en) 2001-11-07 2007-09-04 Microsoft Corporation Method and system for configuring a computer for real-time communication
KR100524762B1 (ko) 2003-07-12 2005-10-31 엘지전자 주식회사 이동통신단말기를 이용한 피씨의 소프트웨어 프로그램인증방법
US7149658B2 (en) 2004-02-02 2006-12-12 United Parcel Service Of America, Inc. Systems and methods for transporting a product using an environmental sensor
SG138452A1 (en) * 2004-05-18 2008-01-28 Victor Company Of Japan Content presentation
CN101496387B (zh) * 2006-03-06 2012-09-05 思科技术公司 用于移动无线网络中的接入认证的系统和方法
US20080104710A1 (en) * 2006-09-29 2008-05-01 Microsoft Corporation Software utilization grace period
US8015409B2 (en) 2006-09-29 2011-09-06 Rockwell Automation Technologies, Inc. Authentication for licensing in an embedded system
US20080183626A1 (en) * 2007-01-31 2008-07-31 Francisco Romero Software license agreement management based on temporary usage
US7930273B1 (en) 2007-07-30 2011-04-19 Adobe Systems Incorporated Version management for application execution environment
US20090326964A1 (en) 2008-06-25 2009-12-31 Microsoft Corporation Extensible agent-based license structure
US20090327091A1 (en) 2008-06-26 2009-12-31 Microsoft Corporation License management for software products
US8788655B2 (en) * 2008-12-19 2014-07-22 Openpeak Inc. Systems for accepting and approving applications and methods of operation of same
US9299075B2 (en) * 2009-11-19 2016-03-29 Adobe Systems Incorporated Method and system for activating a software application while provisioning services for the application
KR101101322B1 (ko) 2010-03-17 2011-12-30 오유록 응용 프로그램 인증 방법 및 장치
EP2448303B1 (en) * 2010-11-01 2014-02-26 BlackBerry Limited Method and system for securing data of a mobile communications device

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030078892A1 (en) * 2001-10-22 2003-04-24 East Daniel V. System, method and computer program product for a fail-safe start-up mechanism for clients of a license server
CN102016861A (zh) * 2008-02-28 2011-04-13 霍尼韦尔国际公司 以断开或间歇连接的模式运行的软件许可证管理系统
US20110083178A1 (en) * 2009-10-01 2011-04-07 Yamaha Corporation Controlling activation of an application program in an audio signal processing system

Also Published As

Publication number Publication date
US20160034672A1 (en) 2016-02-04
CN104094271A (zh) 2014-10-08
EP2807596A1 (en) 2014-12-03
EP2807596B1 (en) 2017-12-20
US20140068783A1 (en) 2014-03-06
EP2807596A4 (en) 2016-03-09
US9158900B2 (en) 2015-10-13
WO2013112393A1 (en) 2013-08-01
US20130198855A1 (en) 2013-08-01
US9811645B2 (en) 2017-11-07
US8555402B2 (en) 2013-10-08

Similar Documents

Publication Publication Date Title
KR101370020B1 (ko) 보안 트랜잭션을 촉진하기 위하여 도메인-특정 보안 샌드박스를 사용하기 위한 시스템 및 방법
EP3142062B1 (en) System and method for transactions security enhancement
EP3070632B1 (en) Binding to a user device
US9306954B2 (en) Apparatus, systems and method for virtual desktop access and management
US8533811B2 (en) Developer phone registration
US9871821B2 (en) Securely operating a process using user-specific and device-specific security constraints
JP5992524B2 (ja) リソースアクセスの権限付与
US9569602B2 (en) Mechanism for enforcing user-specific and device-specific security constraints in an isolated execution environment on a device
CN104094271B (zh) 授权过程的动态选择
US11165780B2 (en) Systems and methods to secure publicly-hosted cloud applications to run only within the context of a trusted client application
TWI598764B (zh) 透過線上伺服器與在安全作業系統中執行程式碼的內容保護
US20140298486A1 (en) Granting access to digital content obtained from a third-party service
US20160267276A1 (en) Systems and Methods for Account Recovery Using a Platform Attestation Credential
US9742750B2 (en) Roaming internet-accessible application state across trusted and untrusted platforms
CN108141723B (zh) 管理应用程序的方法
CN102130907B (zh) 开发者电话注册
TW201143342A (en) Identity authentication method
KR20170111823A (ko) Otp 검증 방법, 이를 수행하는 인증 서버 장치 및 사용자 단말

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: 20150727

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

Effective date of registration: 20150727

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