当前位置: 首页 > 专利查询>波音公司专利>正文

软件许可证管理器制造技术

技术编号:28838153 阅读:31 留言:0更新日期:2021-06-11 23:35
本发明专利技术涉及软件许可证管理器,尤其是提出了用于使用客户端计算机和服务器计算机根据至少一个软件许可证协议来控制对软件应用的访问的技术。客户端计算机被配置为检测软件应用的启动,暂停软件应用的执行进程,确定软件应用受由所述至少一个软件许可证协议定义的多个软件许可证授权标准制约,并且向服务器计算机请求在客户端计算机上使用软件应用的许可证。服务器计算机被配置为确定软件应用在客户端计算机上的使用满足所述多个软件许可证授权标准,并向客户端计算机提供在客户端计算机上使用软件应用的许可证。客户端计算机被配置为恢复软件应用的启动。

【技术实现步骤摘要】
软件许可证管理器
本公开涉及软件许可,具体地,确保遵从软件许可要求。
技术介绍
用于软件许可证管理的一些已知技术是基于加密的,通过在加密的运行时环境内封装可执行二进制文件来操作。当执行封装的二进制文件时,封装的shell向许可证服务器发送请求应用软件许可证的消息。如果许可证可用,则许可证服务器利用加密密钥向封装的运行时环境发送应答以解锁应用可执行文件并执行应用二进制文件。如果许可证不可用,则许可证服务器向封装的运行时环境发送应答以将许可证拒绝消息显示给最终用户。一旦可执行文件终止,运行时环境将向许可证服务器发送许可证签入消息。用于软件许可证签出和签入的一些已知技术在软件应用可执行文件内嵌入一组工具以执行来自许可证服务器的签出和签入许可证授权。这些嵌入的实用工具可将加密的应用可执行文件解密,通常由自己不开发应用可执行文件的许可证管理系统供应商提供。因此,这些已知技术可能不可用于管理对任意软件应用的许可。即使这些技术可用于特定软件应用,由于许可证管理供应商提供嵌入的工具,所以关联的成本被传递给用户,即使用户并未使用该特定软件应用。当实体需要自动方法来强制执行供应商应用许可证协议的条款和条件时,可使用许可证服务器。然而,受软件许可证协议制约的绝大多数软件旨在基于每机器一个许可证来出售和分发。因此,通常不提供这种软件以与许可证服务器一起工作。为了使典型的应用与基于加密的许可证服务器一起工作,许可证的管理团队必须从许可证管理器供应商获取用于对应用进行加密的工具,对他们想要公司使用的应用套件进行加密,然后仅分发那些加密的应用。因此,这些基于加密的技术需要大量的管理工作。由于这些技术涉及利用加密修改可执行文件,所以在一些情况下它们可能导致程序故障。结果,由于供应商可能认为这些加密方法不可支持并且拒绝提供技术援助,所以可能拒绝应用供应商对应用软件的客户支持。对于应用供应商而言常见的做法是为购买的软件许可证协议指定多个条款和条件的列表。这些可包括对许可证的同时使用数量(并行作业、并行节点和并行用户)的限制、对哪些节点可访问许可证的限制、对哪些用户可访问许可证的限制和/或对许可证可国内还是国外部署的限制。另外,供应商可指定一组许可证仅可由作为特定组的成员的人使用,和/或由作为特定技能集的成员的人使用。通常,这些条款和条件是连接(“和”)条件,而非分离(“或”)条件。然而,现有软件许可证管理解决方案至多提供基于单个标准评估许可证使用请求的能力。现有解决方案使用的许可证授权标准的类型包括并行作业或并行节点或并行用户或节点列表或用户列表。现有解决方案要求对于给定应用,仅使用一个许可证授权标准来确定许可证授权被准予还是拒绝。具体地,绝大多数应用许可证管理器使用某一形式的并行软件许可证(单个标准)来确定软件授权结果。此外,对于公司而言常见的是将软件许可证部署到客户端从而引起违反条款和条件,这可导致大笔违约罚金。例如,绝大多数软件应用不具有自动的签出/签入许可证管理软件来强制执行相关条款和条件。此外,软件供应商频繁地添加许可证限制的组合(例如,对客户端列表和用户账户名列表的限制)。为了优化软件许可证的部署和使用,可取的是知道可用许可证授权存储在哪里、许可证部署在哪里、谁在使用许可证、许可证的使用频率以及需要多少许可证维护。此外,应该能够针对所有类型的软件识别未使用或很少使用的许可证。存在仅针对并行软件许可证捕获一些该信息的解决方案。然而,仅基于并行软件许可证的软件授权占约2%的软件标题。剩余软件标题可受基于节点、基于用户、基于令牌、基于企业、基于组、基于技能、基于池、基于站点或基于域的软件许可证协议条款和条件制约。大型公司出于会计目的需要在其各种项目之间分配软件许可的成本。当软件许可条款按使用、作业或小时收费时,这尤其重要。员工可能从事各种项目并且应该考虑成本适当地配备工具。对于具有大量可供选择的收费代码的公司,过多的选择增加了寻找期望的收费代码的负担以及错误地选定错误路线的风险。在软件许可证管理器完全允许收费代码管理的情况下,典型解决方案涉及用户与许可证服务器之间的多个事务。用户可发送对可用收费代码的请求,服务器可对请求作出响应,并且用户可发送服务器可确认或者可不确认的更新。从表面上看,这些事务可能看起来正常,但是当服务器可能需要每小时处理数万请求时,许可证签入/签出以外的任何事务将对每小时可处理的许可证请求的最大吞吐量具有负面影响。可在需要同步的许可证管理配置的多个许可证授权服务器上执行软件许可证授权管理服务。维持这些许可证管理配置可耗时并且易于出错。另外,管理和支持数十万至数百万的客户端极其费力且耗时。此外,客户端软件的故障排除、调试和解决可非常复杂。通常,通过远程登入目标并搜索潜在错误配置来执行应用服务维护支持。这样诊断和/或更新常常非常费力。另外,获得详细诊断信息以用于分析实际上是不存在的,使得几乎不可能复制问题/故障。
技术实现思路
根据一些示例,提出一种使用安装在客户端计算机上的非暂时性客户端计算机软件和安装在至少一个服务器计算机上的非暂时性服务器计算机软件根据至少一个软件许可证协议来控制对软件应用的访问的方法。该方法包括:由在客户端计算机上执行的客户端计算机软件检测软件应用在客户端计算机上的启动;由在客户端计算机上执行的客户端计算机软件暂停软件应用的执行进程;由在客户端计算机上执行的客户端计算机软件确定软件应用受由所述至少一个软件许可证协议定义的多个软件许可证授权标准制约;由在客户端计算机上执行的客户端计算机软件向在服务器计算机上执行的服务器计算机软件请求在客户端计算机上使用软件应用的许可证;由在服务器计算机上执行的服务器计算机软件确定软件应用在客户端计算机上的使用满足所述多个软件许可证授权标准;由在服务器计算机上执行的服务器计算机软件向在客户端计算机上执行的客户端计算机软件提供在客户端计算机上使用软件应用的许可证;以及由在客户端计算机上执行的客户端计算机软件恢复软件应用在客户端计算机上的启动,使得客户端计算机执行软件应用。上述示例的各种可选特征包括以下内容。多个软件许可证授权标准可包括至少关于并行作业、并行节点、并行用户、站点列表、节点列表、用户列表、域列表、组列表、技能列表和池列表的标准。该方法可包括:由在客户端计算机上执行的客户端计算机软件检测第二软件应用在客户端计算机上的启动;由在客户端计算机上执行的客户端计算机软件暂停第二软件应用的执行进程;由在客户端计算机上执行的客户端计算机软件确定第二软件应用受用于第二软件应用的企业范围许可证制约;由在客户端计算机上执行的客户端计算机软件向服务器计算机软件请求在客户端计算机上使用第二软件应用的许可证;由在客户端计算机上执行的客户端计算机存储在客户端计算机上使用第二软件应用的事务信息;以及由在客户端计算机上执行的客户端计算机软件恢复第二软件应用在客户端计算机上的启动,使得客户端计算机执行第二软件应用。客户端软件可将客户端计算机配置为针对失败的软件应用执行尝试显示错误消息,其中该错误消息标识关联的软件许可证授权标准本文档来自技高网
...

【技术保护点】
1.一种使用安装在客户端计算机(104)上的非暂时性客户端计算机软件和安装在至少一个服务器计算机(102)上的非暂时性服务器计算机软件根据至少一个软件许可证协议来控制对软件应用的访问的方法(1000),该方法包括以下步骤:/n由在所述客户端计算机上执行的所述客户端计算机软件检测(1002)所述软件应用在所述客户端计算机上的启动;/n由在所述客户端计算机上执行的所述客户端计算机软件暂停(1004)所述软件应用的执行进程;/n由在所述客户端计算机上执行的所述客户端计算机软件确定(1006)所述软件应用受由所述至少一个软件许可证协议定义的多个软件许可证授权标准制约;/n由在所述客户端计算机上执行的所述客户端计算机软件向在所述服务器计算机上执行的所述服务器计算机软件请求(1008)在所述客户端计算机上使用所述软件应用的许可证;/n由在所述服务器计算机上执行的所述服务器计算机软件确定(1010)所述软件应用在所述客户端计算机上的所述使用满足所述多个软件许可证授权标准;/n由在所述服务器计算机上执行的所述服务器计算机软件向在所述客户端计算机上执行的所述客户端计算机软件提供(1012)在所述客户端计算机上使用所述软件应用的许可证;以及/n由在所述客户端计算机上执行的所述客户端计算机软件恢复(1014)所述软件应用在所述客户端计算机上的所述启动,由此所述客户端计算机执行所述软件应用。/n...

【技术特征摘要】
20191211 US 16/711,2321.一种使用安装在客户端计算机(104)上的非暂时性客户端计算机软件和安装在至少一个服务器计算机(102)上的非暂时性服务器计算机软件根据至少一个软件许可证协议来控制对软件应用的访问的方法(1000),该方法包括以下步骤:
由在所述客户端计算机上执行的所述客户端计算机软件检测(1002)所述软件应用在所述客户端计算机上的启动;
由在所述客户端计算机上执行的所述客户端计算机软件暂停(1004)所述软件应用的执行进程;
由在所述客户端计算机上执行的所述客户端计算机软件确定(1006)所述软件应用受由所述至少一个软件许可证协议定义的多个软件许可证授权标准制约;
由在所述客户端计算机上执行的所述客户端计算机软件向在所述服务器计算机上执行的所述服务器计算机软件请求(1008)在所述客户端计算机上使用所述软件应用的许可证;
由在所述服务器计算机上执行的所述服务器计算机软件确定(1010)所述软件应用在所述客户端计算机上的所述使用满足所述多个软件许可证授权标准;
由在所述服务器计算机上执行的所述服务器计算机软件向在所述客户端计算机上执行的所述客户端计算机软件提供(1012)在所述客户端计算机上使用所述软件应用的许可证;以及
由在所述客户端计算机上执行的所述客户端计算机软件恢复(1014)所述软件应用在所述客户端计算机上的所述启动,由此所述客户端计算机执行所述软件应用。


2.根据权利要求1所述的方法,其中,所述多个软件许可证授权标准包括关于至少并行作业、并行节点、并行用户、站点列表、节点列表、用户列表、域列表、组列表、技能列表和池列表的标准。


3.根据权利要求1至2中的任一项所述的方法,该方法还包括以下步骤:
由在所述客户端计算机上执行的所述客户端计算机软件检测(1002)第二软件应用在所述客户端计算机上的启动;
由在所述客户端计算机上执行的所述客户端计算机软件暂停(1004)所述第二软件应用的执行进程;
由在所述客户端计算机上执行的所述客户端计算机软件确定(1006)所述第二软件应用受用于所述第二软件应用的企业范围许可证制约;
由在所述客户端计算机上执行的所述客户端计算机软件向所述服务器计算机软件请求(1008)在所述客户端计算机上使用所述第二软件应用的许可证;
由在所述客户端计算机上执行的所述客户端计算机存储在所述客户端计算机上使用所述第二软件应用的事务信息(606);以及
由在所述客户端计算机上执行的所述客户端计算机软件恢复(1014)所述第二软件应用在所述客户端计算机上的所述启动,由此所述客户端计算机执行所述第二软件应用。


4.根据权利要求1至3中的任一项所述的方法,其中,所述客户端计算机软件将所述客户端计算机配置为针对失败的软件应用执行尝试显示错误消息,其中,该错误消息标识关联的软件许可证授权标准失败。


5.根据权利要求1至4中的任一项所述的方法,其中,所述客户端计算机软件将所述客户端计算机配置为如果所述客户端计算机在所述客户端计算机上检测到特许令牌,则绕过由所述客户端计算机软件向所述服务器计算机软件请求在所述客户端计算机上使用所述软件应用的许可证。


6.根据权利要求1至5中的任一项所述的方法,该方法还包括以下步骤:
由在所述客户端计算机上执行的所述服务器计算机软件记录在所述客户端计算机上使用所述软件应用的事务信息(604,606,608,610,612),其中,所述事务信息至少包括:软件应用标识、客户端计算机标识、使用持续时间和软件许可证授权标准满意度数据。


7.根据权利要求1至6中的任一项所述的方法,其中,所述软件应用的任何部分均未被加密。

【专利技术属性】
技术研发人员:R·J·迪克森
申请(专利权)人:波音公司
类型:发明
国别省市:美国;US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1