本发明涉及计算机,尤其是涉及一种软件离线授权管理方法、装置、电子设备及存储介质。
背景技术:
1、未受保护的软件很容易受到盗版的侵害,从而导致软件生产商蒙受巨大经济损失。幸运的是,软件行业逐渐找到了有效的防御机制,用于抵御非法使用和盗版软件。越来越多的软件生产商选择软件保护系统为其知识产权保驾护航。带有激活码的软许可或者安全硬件(如加密锁)长期以来已经成为保护商用软件、防止非法使用的首选。软件无所不在,现今,几乎所有的活动都需要软件的参与。然而目前的软件保护方案在许可文件的正确性和授权许可的及时性方面还无法满足用户需求,因此需要一套有效的机制来预防并保护软件的合法权益。
技术实现思路
1、本发明的目的在于提供一种软件离线授权管理方法、装置、电子设备及存储介质,以确保许可文件的正确性以及授权许可的及时性。
2、第一方面,本发明实施例提供了一种软件离线授权管理方法,包括:
3、当获取到待导入的当前软件的许可文件时,通过校验所述许可文件进行所述许可文件的导入,并对已导入的所述许可文件进行定时校验;
4、当获取到用户对所述当前软件对应的模块服务的访问请求时,基于所述许可文件对所述访问请求进行拦截校验;其中,所述模块服务为安装有所述当前软件的服务器中的模块所提供的服务。
5、进一步地,所述通过校验所述许可文件进行所述许可文件的导入,包括:
6、判断所述许可文件的指定文件路径下是否存在原许可文件;
7、当存在所述原许可文件时,对所述原许可文件进行备份,并将所述许可文件存入所述指定文件路径下;对所述许可文件进行预设内容的校验,其中,所述预设内容包括mac地址、ip地址和是否过期;当校验通过时,删除备份的所述原许可文件;当校验失败时,将备份的所述原许可文件还原至所述指定文件路径;
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、本发明实施例提供的软件离线授权管理方法、装置、电子设备及存储介质,当获取到待导入的当前软件的许可文件时,通过校验许可文件进行许可文件的导入,并对已导入的许可文件进行定时校验;当获取到用户对当前软件对应的模块服务的访问请求时,基于许可文件对访问请求进行拦截校验;其中,模块服务为安装有当前软件的服务器中的模块所提供的服务。这样采用了导入时的校验、导入后的定时校验和访问服务时的拦截校验的三重校验方式,可以确保许可文件的正确性以及授权许可的及时性。
1.一种软件离线授权管理方法,其特征在于,包括:
2.根据权利要求1所述的软件离线授权管理方法,其特征在于,所述通过校验所述许可文件进行所述许可文件的导入,包括:
3.根据权利要求1所述的软件离线授权管理方法,其特征在于,所述对已导入的所述许可文件进行定时校验,包括:
4.根据权利要求1所述的软件离线授权管理方法,其特征在于,所述许可文件的许可内容包括已授权模块信息;所述通过校验所述许可文件进行所述许可文件的导入之后,所述软件离线授权管理方法还包括:
5.根据权利要求4所述的软件离线授权管理方法,其特征在于,所述已授权模块信息为已授权模块列表;所述基于所述许可文件中的已授权模块信息启动所述当前模块,包括:
6.根据权利要求1所述的软件离线授权管理方法,其特征在于,所述基于所述许可文件对所述访问请求进行拦截校验,包括:
7.根据权利要求1所述的软件离线授权管理方法,其特征在于,所述许可文件的许可内容还包括租户数量阈值;所述基于所述许可文件对所述访问请求进行拦截校验,包括:
8.一种软件离线授权管理装置,其特征在于,包括:
9.一种电子设备,包括存储器、处理器,所述存储器中存储有可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1-7中任一项所述的软件离线授权管理方法。
10.一种存储介质,所述存储介质上存储有计算机程序,其特征在于,所述计算机程序被处理器运行时执行权利要求1-7中任一项所述的软件离线授权管理方法。