一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种微服务架构软件授权管理系统及方法与流程

2022-03-26 06:48:57 来源:中国专利 TAG:


1.本发明涉及一种微服务架构软件授权管理系统及方法,属于计算机应用软件授权管理技术领域。


背景技术:

2.随着容器化部署以及微服务架构的广泛应用,越来越多的应用系统采用微服务方式部署在虚拟机承载的容器中,微服务软件的授权管理逐渐成为一个新的技术关注点。
3.由于软件系统运行在虚拟机与容器的环境中,运行环境中的硬件信息均为虚拟的,无法采用业界常用的将软件与硬件信息绑定方式进行软件授权。且微服务架构的软件系统一般包含几十甚至几百个微服务程序,对每个微服务程序进行授权会极大增加授权管理的复杂度。


技术实现要素:

4.本发明的目的在于克服现有技术中的不足,提供一种微服务架构软件授权管理系统及方法,能够便于进行微服务架构软件的访问权限判定和更新。
5.为达到上述目的,本发明是采用下述技术方案实现的:
6.第一方面,本发明提供了一种微服务架构软件授权管理方法,包括:
7.读取软件的授权文件信息;
8.基于当前系统时间和授权文件信息的授权截止时间进行比较;
9.基于比较结果更新系统当前软件授权状态;
10.基于系统当前软件授权状态进行软件访问限制判定;
11.响应于授权信息发生变化时,重新读取系统中的授权文件信息并判定。
12.进一步的,所述授权文件信息包括试用版的授权文件和授权版的授权文件,基于当前系统时间和授权文件信息的授权截止时间进行比较,包括:
13.响应于授权文件信息为试用版的授权文件时,根据当前系统时间,设置授权截止时间为三十天;
14.响应于授权文件信息为授权版的授权文件时,以授权文件中配置的授权截止时间为授权截止时间。
15.进一步的,基于系统当前软件授权状态进行软件访问限制判定,包括:
16.响应于试用版的授权文件授权截止时间未到期时,软件正常运行,外部正常访问;
17.响应于试用版的授权文件授权截止时间到期,且未导入授权版的授权文件时,软件正常运行,外部访问失败;
18.响应于导入授权版的授权文件授权截止时间未到期时,软件正常运行,外部正常访问;
19.响应于导入授权版的授权文件授权截止时间到期,且未导入新的授权版的授权文件时,软件正常运行,外部访问失败;
20.响应于导入新的授权版的授权文件,且新的授权版的授权文件截止时间未到期时,软件恢复为授权版状态,软件正常运行,外部正常访问。
21.进一步的,所述授权文件信息由授权生成工具基于授权项信息处理生成,所述授权项信息包括授权截止期限、序列号、授权生成日期和授权类型。
22.进一步的,所述授权文件信息于导入软件前进行序列号校验,并于校验通过后导入软件中。
23.进一步的,所述授权文件信息通过授权管理服务导入软件中,且授权文件信息可通过授权管理服务进行查看。
24.进一步的,所述授权文件信息通过微服务配置中心进行存储。
25.第二方面,本发明提供了一种微服务架构软件授权管理系统,包括:
26.信息读取模块,用于读取软件的授权文件信息;
27.时间对比模块,用于基于当前系统时间和授权文件信息的授权截止时间进行比较;
28.状态更新模块,用于基于比较结果更新系统当前软件授权状态;
29.权限判定模块,用于基于系统当前软件授权状态进行软件访问限制判定;
30.监测模块,用于响应于授权信息发生变化时,重新读取系统中的授权文件信息并判定。
31.第三方面,一种微服务架构软件授权管理装置,包括处理器及存储介质;
32.所述存储介质用于存储指令;
33.所述处理器用于根据所述指令进行操作以执行根据上述任一项所述方法的步骤。
34.第四方面,计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述任一项所述方法的步骤。
35.与现有技术相比,本发明所达到的有益效果:
36.一、本发明针对目前容器微服务部署架构的软件授权问题,提出一种基于微服务网关的软件授权管理方法。微服务架构下,微服务网关是用户http请求的唯一入口,用户的请求需通过微服务网关路由才能访问到对应的服务。基于该特性,通过基于授权文件授权的策略在微服务网关内部管理软件授权状态,根据授权有效性决定是否对用户的访问请求进行路由,从而控制用户对微服务软件的使用,达到对软件授权的目的;
37.二、本发明通过信息加密以及序列号的方式生成软件的授权信息,授权信息保密性较高,通过发放序列号的方式控制隔离不同的用户;通过在微服务网关进行授权控制,无需修改软件的微服务,对原软件的侵入性较小,通过拒绝外部访问来控制未授权软件的使用,软件中容器和微服务的部署及运行不受影响;授权失效后,不响应外部请求,但容器及容器内的微服务仍可独立运转,在授权异常或者授权更新时无需重新部署容器和微服务,对在运系统的影响较小,其中授权文件分为试用版和正式版两种,导入试用版授权文件后,软件仅具备一个月时间的访问权限;导入正式版授权文件后,软件在授权到期前一直具备访问权限。
附图说明
38.图1是本发明实施例一提供的授权信息管理功能结构图;
39.图2是本发明实施例一提供的微服务网关授权检测功能模块图;
40.图3是本发明实施例一提供的微服务网关授权检测流程图;
41.图4是本发明实施例一提供的总体架构图;
42.图5是本发明实施例一提供的授权工作流程图。
具体实施方式
43.下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
44.实施例一:
45.一种微服务架构软件授权管理方法,主要包括以下关键技术点:
46.(1)基于数据加密和授权序列号的授权生成工具
47.授权生成工具独立于微服务软件运行,便于授权管理人员生成授权文件。授权工具为单体程序,输入为授权有效期、授权序列号等授权项信息,输出为加密后的授权文件。授权文件加密采用aes对称加密的方式,授权工具和微服务软件持有相同的密钥。授权项如表1所示:
[0048][0049]
表1授权项列表
[0050]
其中,“授权截止期限”表示微服务软件可使用的最后期限,“序列号”用于区分不同客户的授权信息,授权类型“temp”表示试用版的授权文件,“authorize”表示授权版的授权文件。试用版授权文件随微服务软件一同发布,便于产品的发布和推广。软件第一次安装部署时可先导入试用版授权文件,具备一个月的有效使用时间。
[0051]
(2)通过授权管理服务和微服务配置中心管理授权信息
[0052]
为方便微服务软件对授权信息的管理,需新增授权管理服务。授权管理服务采用b/s架构,支持授权信息导入,授权信息查看等功能,并通过微服务配置中心存储授权信息。主要结构如图1所示。
[0053]
授权信息管理主要涉及到的处理流程有:
[0054]
a)通过页面进行授权文件的导入,授权信息刷新等。
[0055]
b)授权导入时需要输入序列号,用于校验授权文件的真实性,校验通过后导入到软件中。(序列号可通过软件包装盒、软件采购合同等介质提供)。
[0056]
c)根据授权文件类型,采用不同的授权生效方式。如果是试用版授权文件,则根据当前系统时间,设置授权截止时间为30天之后;如果是正式版授权,则以授权文件中配置的授权截止时间为授权截止时间。
[0057]
d)一般微服务架构软件均具备微服务配置中心,用于存储各微服务的配置信息。本发明利用已有配置中心,通过新增授权信息配置项,将授权信息以密文文本形式保存该配置项中。
[0058]
(3)基于微服务网关进行软件访问控制
[0059]
微服务网关从微服务配置中心读取授权信息,并在服务路由中根据当前授权有效性,决定是否进行访问限制。图2所示为微服务网关授权检测的主要功能结构。
[0060]
微服务网关启动时从配置中心读取密文授权信息,解密后保存在内存中,并且每天对当前系统时间和授权截止时间进行一次比较,更新系统当前授权状态。微服务网关监听到配置中心的授权信息变化后,重新读取和解析授权信息,更新本地内存。微服务网关授权检测流程如图3所示。
[0061]
以下通过总体架构和授权工作流程进一步描述本发明的具体实施方式。
[0062]
图4是本发明的总体架构,本发明的实施主要涉及授权生成工具、授权管理服务、微服务配置中心、微服务网关几个主要模块。授权生成工具用于生成加密的授权文件,授权管理服务和微服务配置中心用于管理和存储授权信息,微服务网关用于根据授权信息控制用户的访问。主要实施内容有:
[0063]
(1)开发授权生成工具,通过加密方式生成试用版授权文件license.file。
[0064]
(2)在微服务配置中心中新增配置项“authorize”,用于保存授权信息。
[0065]
(3)开发授权管理服务,将授权文件license.file导入到配置中心的“authorize”配置项中。
[0066]
(4)微服务网关增加读取配置项“authorize”处理,解密授权信息,并将授权截止时间和当前系统时间比较,确认授权有效性。
[0067]
(5)微服务网关根据授权有效性,决定是否对外部访问进行路由,达到对软件授权的目标。
[0068]
本发明的授权方法主要工作流程如图5所示:
[0069]
(1)微服务软件初次启动时,通过导入软件发布版本自带的试用版授权文件,转为试用版状态,软件正常运行,外部正常访问。
[0070]
(2)导入正式授权文件后,软件变为授权版状态,软件正常运行,外部正常访问。
[0071]
(3)如未导入正式授权,试用版到期后,软件变为未授权状态,软件正常运行,外部访问失败。
[0072]
(4)授权版授权到期后,软件变为未授权状态,软件正常运行,外部访问失败。
[0073]
(5)授权版授权到期后,重新导入新的授权,软件恢复为授权版状态,软件正常运行,外部正常访问。
[0074]
(6)授权版运行过程中,授权信息保存在微服务网关内存中,不会因微服务配置中心异常引发授权读取异常。若微服务网关重新启动时未读取到授权,则软件变为未授权状态。
[0075]
实施例二:
[0076]
一种微服务架构软件授权管理系统,包括:
[0077]
信息读取模块,用于读取软件的授权文件信息;
[0078]
时间对比模块,用于基于当前系统时间和授权文件信息的授权截止时间进行比
较;
[0079]
状态更新模块,用于基于比较结果更新系统当前软件授权状态;
[0080]
权限判定模块,用于基于系统当前软件授权状态进行软件访问限制判定;
[0081]
监测模块,用于响应于授权信息发生变化时,重新读取系统中的授权文件信息并判定。
[0082]
实施例三:
[0083]
本发明实施例还提供了一种微服务架构软件授权管理装置,包括处理器及存储介质;
[0084]
所述存储介质用于存储指令;
[0085]
所述处理器用于根据所述指令进行操作以执行下述方法的步骤:
[0086]
读取软件的授权文件信息;
[0087]
基于当前系统时间和授权文件信息的授权截止时间进行比较;
[0088]
基于比较结果更新系统当前软件授权状态;
[0089]
基于系统当前软件授权状态进行软件访问限制判定;
[0090]
响应于授权信息发生变化时,重新读取系统中的授权文件信息并判定。
[0091]
实施例四:
[0092]
本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现下述方法的步骤:
[0093]
读取软件的授权文件信息;
[0094]
基于当前系统时间和授权文件信息的授权截止时间进行比较;
[0095]
基于比较结果更新系统当前软件授权状态;
[0096]
基于系统当前软件授权状态进行软件访问限制判定;
[0097]
响应于授权信息发生变化时,重新读取系统中的授权文件信息并判定。
[0098]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0099]
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0100]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0101]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计
算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0102]
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献