CN111368263A - 一种客户授权方法 - Google Patents

一种客户授权方法 Download PDF

Info

Publication number
CN111368263A
CN111368263A CN202010140818.9A CN202010140818A CN111368263A CN 111368263 A CN111368263 A CN 111368263A CN 202010140818 A CN202010140818 A CN 202010140818A CN 111368263 A CN111368263 A CN 111368263A
Authority
CN
China
Prior art keywords
authorization
client
project
judgment
server
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.)
Pending
Application number
CN202010140818.9A
Other languages
English (en)
Inventor
何立伟
李大鹏
何溪
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.)
Shandong Inspur Genersoft Information Technology Co Ltd
Original Assignee
Shandong Inspur Genersoft Information Technology Co Ltd
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 Shandong Inspur Genersoft Information Technology Co Ltd filed Critical Shandong Inspur Genersoft Information Technology Co Ltd
Priority to CN202010140818.9A priority Critical patent/CN111368263A/zh
Publication of CN111368263A publication Critical patent/CN111368263A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种客户授权方法,本发明包括如下步骤:S1、接收客户的项目授权申请,项目授权申请中包括项目底层配置信息;S2、依据客户的申请进行项目模块授权,并生成授权文件发送给客户;S3、授权文件由客户导入到项目中,并通过底层服务进行授权判断。本发明通过客户在线申请、管理员进行项目模块依次授权形成授权文件并发送给客户、客户将授权文件导入到Web应用服务器指定路径下,并运行底层服务进行授权验证,基于上述过程,本发明的摒弃传统关系型数据库复杂的逻辑判断,采用快速进行授权判断,大大提高了性能与效率。

Description

一种客户授权方法
技术领域
本发明涉及计算机应用技术领域,具体地说是一种客户授权方法。
背景技术
随着应用系统的日益普及和发展,系统功能模块越来越丰富化,系统开发商投入大量的人力、财力研发新功能。但是不乏一些“拿来主义”者直接窃取研发成果,这就需要系统的客户授权确保系统的安全性和有效性,避免产生项目出现直接被复制的情况发生。而且传统的关系型数据库,存在着并发客户多性能降低、数据储存量小安全性不够高等问题,现在需要一种处理熟读快、运行稳定的系统。
发明内容
本发明的目的是针对以上不足,提供一种客户授权方法,基于Redis内粗数据库,建立高效稳定的授权机制。
本发明所采用技术方案是:
一种客户授权方法,包括如下步骤:
S1、接收客户的项目授权申请,项目授权申请中包括项目底层配置信息;
S2、依据客户的申请进行项目模块授权,并生成授权文件发送给客户;
S3、授权文件由客户导入到项目中,并通过底层服务进行授权判断。
作为进一步的优化,本发明步骤S4中,通过底层服务进行授权判断的步骤包括:
S41、底层服务运行,解密授权文件中的授权信息,并判断是否为首次执行,若判断非首次执行,将授权文件的授权信息更新到底层服务中;若判断为首次执行,解析数据;
S42、判断授权文件中的各服务器MAC地址与应用服务器MAC地址是否一致,当出现不一致的情况时,进行错误提示;
S43、判断项目的客户序列号与申请授权的客户序列号是否一致,当出现不一致的情况时,进行错误提示。
作为进一步的优化,本发明步骤S2中,需要授权的模块为Web应用服务器、API接口服务器、第三方平台、后台模块、插件、页面、业务链中的一种或几种的组合。
具体的,本发明步骤S2中,授权文件中包含有授权信息,授权信息中包括项目整体授权信息,项目整体授权信息包括当前版本号、准入日期、到期日期和授权客户,授权客户通过客户序列号的形式识别。
具体的,本发明所述Web应用服务器在授权时需要填写web应用服务器名称以及该web应用服务器的MAC地址、内网地址、外网地址,当同一项目包含多台Web应用服务器时需要添加所有web应用服务器的信息,web应用服务器的信息包含在客户填写的项目底层配置信息中。
具体的,本发明所述API接口服务器授权时需要配置API接口服务器的名称以及该API接口服务器的Mac地址、内网地址、外网地址,当同一项目包含多台API接口服务器时,配置会平行生成数量相对应的内存数据,并生成顺序编号,底层服务会验证每个API接口服务器的对应关系,API接口服务器的信息包含在客户填写的项目底层配置信息中。
具体的,本发明所述的第三方平台在授权时需要配置第三方平台的服务器名称以及该第三方平台的服务器的MAC地址、内网地址、外网地址,第三方平台信息包含在客户填写的项目底层配置信息中。
具体的,本发明所述后台模块、插件和页面上均设置有判断标签,在后台模块、插件和页面进行授权时,通过勾选相对应的模块建立判断标签与客户序列号之间的逻辑关系,每次运行相应模块时,判断标签均校验与客户序列号之间的关系;
具体的,本发明所述业务链是由多个页面组成的业务功能,业务链在授权时,在组成业务链的部分页面中设置判断标签,业务链在运行至设置有判断判断标签的页面时才会执行授权判断。
具体的,本发明业务链在授权时,业务链整体设置有判断标签,业务链运行之前先进行授权判断。
本发明具有以下优点:
1、本发明通过客户在线申请、管理员进行项目模块依次授权形成授权文件并发送给客户、客户将授权文件导入到Web应用服务器指定路径下,并运行底层服务进行授权验证,基于上述过程,本发明的摒弃传统关系型数据库复杂的逻辑判断,采用快速进行授权判断,大大提高了性能与效率;
2、本发明的授权项目包括Web应用服务器、API接口服务器、第三方平台、后台模块、插件、页面、业务链等内容,授权范围覆盖更加全面,有效提高系统的安全性,减少误操作、数据泄露等风险的发生;
3、本发明基于Radis数据库为基础,依靠多种键值数据类型进行授权判断,解除关系型数据库的逻辑关系判断束缚,对于复杂数据处理更加快速高效。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
下面结合附图对本发明进一步说明:
图1为发明的项目授权的整体流程;
图2为底层服务进行授权判断的流程图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明,以使本领域的技术人员可以更好地理解本发明并能予以实施,但所举实施例不作为对本发明的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互结合。
需要理解的是,在本发明实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。在本发明实施例中的“多个”,是指两个或两个以上。
本发明实施例中的属于“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,单独存在B,同时存在A和B这三种情况。另外,本文中字符“/”一般表示前后关联对象是一种“或”关系。
本实施例提供一种客户授权方法,应用于项目开发者对于项目服务商的授权控制,项目服务商下载项目资源包后,在商城项目管理入口进行项目的授权申请。
如图1所示,本实施例的客户授权方法包括如下步骤:
S1、接收客户的项目授权申请,项目授权申请中包括项目底层配置信息;
本实施例中客户在下载项目资源包后需要进行底层配置,包括Web服务器、API接口服务器以及第三服务器等用于支撑整体项目的运行,同时项目服务商还会在项目资源运行过程中对于页面、插件、后台模块以及业务链的需要,这些可以在申请授权时,同时下载这些资源文件用于项目资源运行,客户在填写项目授权申请时,需要将上述配置的Web服务器、API接口服务器以及第三服务器填入到;
S2、依据客户的申请进行项目模块授权,并生成授权文件发送给客户;具体的,需要授权的模块为Web服务器、API接口服务器、第三方平台、后台模块、插件、页面、业务链中的一种或几种的组合,管理通过授权管理平台根据客户填写的底层配置信息依次对相应模块进行授权,最终形成授权文件,授权文件中包含有授权信息,授权信息中包括项目整体授权信息,项目整体授权信息包括当前版本号、准入日期、到期日期和授权客户,授权客户通过序列号的形式识别;具体的,不同模块之间的具体授权信息如下:
Web应用服务器:
本实施例所述Web应用服务器在授权时需要填写web应用服务器名称以及该web应用服务器的MAC地址、内网地址、外网地址,当同一项目包含多台Web服务器时需要添加所有web应用服务器的信息,web应用服务器的信息包含在客户填写的项目底层配置信息中;
API接口服务器:
本实施例所述API接口服务器授权时需要配置API接口服务器的名称以及该API接口服务器的Mac地址、内网地址、外网地址,当同一项目包含多台API接口服务器时,配置会平行生成数量相对应的内存数据,并生成顺序编号,底层服务会验证每个API接口服务器的对应关系,API接口服务器的信息包含在客户填写的项目底层配置信息中;
第三方平台:
本实施例所述的第三方平台在授权时需要配置第三方平台的服务器名称以及该第三方平台的服务器的MAC地址、内网地址、外网地址,第三方平台信息包含在客户填写的项目底层配置信息中;
后台模块、插件和页面:
本实施例所述后台模块、插件和页面上均设置有判断标签,在后台模块、插件和页面进行授权时,通过勾选相对应的模块建立判断标签与客户序列号之间的逻辑关系,每次运行相应模块时,判断标签均校验与客户序列号之间的关系;
业务链:
本实施例所述业务链是由多个页面组成的业务功能,业务链本身已经可以单独作为一个项目,因此基于上述授权方式,业务链的授权方式有两种,一种是在组成业务链的部分页面中设置判断标签,业务链在授权时,这些判断标签与授权客户序列号之间建立逻辑关系,业务链在运行至设置有判断标签的页面时才会执行授权判断。第二种是对业务链整体设置判断标签,业务链在授权时,勾选该业务链,使业务链整体的判断标签与授权的客户序列号之间建立逻辑关系,在业务链每次运行之前均需要授权判断;
S3、授权文件由客户导入到Web应用服务器的指定路径下,并通过底层服务进行授权判断;具体的,如图2所示,通过底层服务进行授权判断的步骤包括:
S41、底层服务运行,解密授权文件中的授权信息,并判断是否为首次执行,若判断非首次执行,将授权文件的授权信息更新到底层服务中;若判断为首次执行,解析数据;
S42、判断授权文件中的各服务器MAC地址与实际应用服务器MAC地址是否一致,当出现不一致的情况时,进行错误提示;
S43、判断项目的客户序列号与申请授权的客户序列号是否一致,当出现不一致的情况时,进行错误提示。每个项目均对应一个客户序列号,在进行序列号判断时,需要客户在项目管理平台上点击【关于】获取当前项目的客户序列号,且底层服务程序能够将当前项目的客户序列号自动同步至授权信息表上,当授权信息表上缺少该信息时,会进行信息报错,根据上面授权信息表上的客户序列号与授权申请时的客户序列号进行比对。此方式可以防止出现以下情况:客户进行破坏性操作时,将A项目过期授权文件直接应用到B项目,仅比对Mac地址的话,通过授权,但是通过比对客户序列号会进行错误提示。
本实施例主要针对项目开发者对于项目服务商的授权控制,同时项目服务商还存在自己的服务用户,其中对于页面、插件和后台模块的授权控制方法还可以避免项目服务商再下一级的用户盗取使用。
下面以BBS(论坛)业务链为例,对本实施例进行具体说明:
一、下载BBS业务链
1、用户登录商城,输入客户序列号并使用虚拟支付货币下载BBS业务链,虚拟支付货币可以是积分或充值卡等,并填写为该BBS业务链运行所进行的底层配置信息:包括Web应用服务器、API接口服务器、第三方平台等;
2、系统将BBS业务链应用的DLL、CSHtml、CSS、JS、IMG、授权文件等资源进行压缩打包处理,授权文件由商城管理员根据客户填写的底层配置信息依次进行授权管理后生成,最终生成BBS.JSON文件。
二、导入BBS.JSON文件
1、将BBS.JSON文件解压放置在所有已授权的Web服务器规定路径下;
2、将BBS.JSON文件中的授权文件解压放置在规定路径;
三、底层服务判断授权
1、首先解密授权信息,将List数据整理为表格数据,并判断是否首次执行,判断方式为GS_State的数据,若GS_State为null,则为首次执行;若判断非首次执行,更新授权信息表内的授权信息;若判断为首次执行,初始化授权信息表,授权信息表是客户端数据库里的文件;下面为本步骤的部分代码:
Figure BDA0002399025700000061
Figure BDA0002399025700000071
2、生成加密时间戳:用于网站判断服务是否停止;下面为本步骤的部分代码:
RedisCredit.Set("Credit:Monitor:Timestamp",DESEncrypt.Encrypt(DateTime.Now.Ticks.ToString()));
3、获取当前运行程序的目录;下面为本步骤的部分代码:
stringfileDir=System.AppDomain.CurrentDomain.BaseDirectory;
stringmonitorJson=Path.Combine(fileDir,DESEncrypt.Encrypt(Net.GetMacByNetworkInterface()[0])+
".JSON");
4、序列化Json文件:将Json文件内容序列化并读取数据对象;下面为本步骤的部分代码:
JObjectjObject=newJObject();
using(JsonTextReader reader=newJsonTextReader(file));
5、对比Mac地址:对比授权文件中MAC地址与应用服务器MAC地址是否一致;下面为本步骤的部分代码:
if(!MonitorHelper.Mac(credit.AccessId))
{
MonitorHelper.DelKeyValue(credit,1003,"授权文件与应用服务器不匹配,请重新申请授权文件。");
MonitorLog.WriteLog("错误:"+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")+"授权文件与应用服务器
不匹配,请重新申请授权文件。");
return;
}
6、判断Credit Client表数据:客户需在项目管理平台点击【关于】获取客户序列号,同时,程序将客户序列号更新到Credit Client表(授权信息表)中,当程序判断CreditClient表数据无序列号数据则报出提示;下面为本步骤的部分代码:
if(creditClient==null)
{
MonitorLog.WriteLog("错误:"+DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")+"CreditClient数据异常!
请通过“关于”功能,确定客户序列号。");
return;
};
7、判断项目的客户序列号与申请授权的客户序列号是否一致,当出现不一致的情况时,进行错误提示。下面为本步骤的部分代码:
Figure BDA0002399025700000081
以上所述实施例仅是为充分说明本发明而所举的较佳的实施例,本发明的保护范围不限于此。本技术领域的技术人员在本发明基础上所作的等同替代或变换,均在本发明的保护范围之内。本发明的保护范围以权利要求书为准。

Claims (10)

1.一种客户授权方法,其特征在于:包括如下步骤:
S1、接收客户的项目授权申请,项目授权申请中包括项目底层配置信息;
S2、依据客户的申请进行项目模块授权,并生成授权文件发送给客户;
S3、授权文件由客户导入到项目中,并通过底层服务进行授权判断。
2.根据权利要求1所述的客户授权方法,其特征在于:步骤S4中,通过底层服务进行授权判断的步骤包括:
S41、底层服务运行,解密授权文件中的授权信息,并判断是否为首次执行,若判断非首次执行,将授权文件的授权信息更新到底层服务中;若判断为首次执行,解析数据;
S42、判断授权文件中的各服务器MAC地址与应用服务器MAC地址是否一致,当出现不一致的情况时,进行错误提示;
S43、判断项目的客户序列号与申请授权的客户序列号是否一致,当出现不一致的情况时,进行错误提示。
3.根据权利要求1所述的客户授权方法,其特征在于:步骤S2中,需要授权的模块为Web应用服务器、API接口服务器、第三方平台、后台模块、插件、页面、业务链中的一种或几种的组合。
4.根据权利要求3所述的客户授权方法,其特征在于:步骤S2中,授权文件中包含有授权信息,授权信息中包括项目整体授权信息,项目整体授权信息包括当前版本号、准入日期、到期日期和授权客户,授权客户通过客户序列号的形式识别。
5.根据权利要求4所述的客户授权方法,其特征在于:所述Web应用服务器在授权时需要填写web应用服务器名称以及该web应用服务器的MAC地址、内网地址、外网地址,当同一项目包含多台Web应用服务器时需要添加所有web应用服务器的信息,web应用服务器的信息包含在客户填写的项目底层配置信息中。
6.根据权利要求4所述的客户授权方法,其特征在于:所述API接口服务器授权时需要配置API接口服务器的名称以及该API接口服务器的Mac地址、内网地址、外网地址,当同一项目包含多台API接口服务器时,配置会平行生成数量相对应的内存数据,并生成顺序编号,底层服务会验证每个API接口服务器的对应关系,API接口服务器的信息包含在客户填写的项目底层配置信息中。
7.根据权利要求4所述的客户授权方法,其特征在于:所述的第三方平台在授权时需要配置第三方平台的服务器名称以及该第三方平台的服务器的MAC地址、内网地址、外网地址,第三方平台信息包含在客户填写的项目底层配置信息中。
8.根据权利要求4所述的客户授权方法,其特征在于:所述后台模块、插件和页面上均设置有判断标签,在后台模块、插件和页面进行授权时,通过勾选相对应的模块建立判断标签与客户序列号之间的逻辑关系,每次运行相应模块时,判断标签均校验与客户序列号之间的关系。
9.根据权利要求4所述的客户授权方法,其特征在于:所述业务链是由多个页面组成的业务功能,业务链在授权时,在组成业务链的部分页面中设置判断标签,业务链在运行至设置有判断判断标签的页面时才会执行授权判断。
10.根据权利要求4所述的客户授权方法,其特征在于:业务链在授权时,业务链整体设置有判断标签,业务链运行之前先进行授权判断。
CN202010140818.9A 2020-03-03 2020-03-03 一种客户授权方法 Pending CN111368263A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010140818.9A CN111368263A (zh) 2020-03-03 2020-03-03 一种客户授权方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010140818.9A CN111368263A (zh) 2020-03-03 2020-03-03 一种客户授权方法

Publications (1)

Publication Number Publication Date
CN111368263A true CN111368263A (zh) 2020-07-03

Family

ID=71211664

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010140818.9A Pending CN111368263A (zh) 2020-03-03 2020-03-03 一种客户授权方法

Country Status (1)

Country Link
CN (1) CN111368263A (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101866404A (zh) * 2010-06-13 2010-10-20 用友软件股份有限公司 软件系统模块独立授权控制方法和装置
CN103186725A (zh) * 2011-12-31 2013-07-03 北大方正集团有限公司 软件授权方法和装置
CN104580316A (zh) * 2013-10-24 2015-04-29 深圳市国信互联科技有限公司 软件授权管理方法及系统
CN105635082A (zh) * 2014-11-12 2016-06-01 北大方正集团有限公司 动态授权方法和系统以及授权中心、授权客户端
CN105868588A (zh) * 2016-03-25 2016-08-17 浪潮通用软件有限公司 一种结构化的erp管理软件授权许可信息描述方法
GB201810674D0 (en) * 2018-06-28 2018-08-15 Arm Ip Ltd Methods for delivering an authenticatable management activity to remote devices
CN110032835A (zh) * 2019-02-21 2019-07-19 上海会宝信息技术有限公司 一种防止软件复制与迁移的软加密技术
CN110891187A (zh) * 2019-11-30 2020-03-17 广西广播电视信息网络股份有限公司 一种家庭智能终端的节目授权控制方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101866404A (zh) * 2010-06-13 2010-10-20 用友软件股份有限公司 软件系统模块独立授权控制方法和装置
CN103186725A (zh) * 2011-12-31 2013-07-03 北大方正集团有限公司 软件授权方法和装置
CN104580316A (zh) * 2013-10-24 2015-04-29 深圳市国信互联科技有限公司 软件授权管理方法及系统
CN105635082A (zh) * 2014-11-12 2016-06-01 北大方正集团有限公司 动态授权方法和系统以及授权中心、授权客户端
CN105868588A (zh) * 2016-03-25 2016-08-17 浪潮通用软件有限公司 一种结构化的erp管理软件授权许可信息描述方法
GB201810674D0 (en) * 2018-06-28 2018-08-15 Arm Ip Ltd Methods for delivering an authenticatable management activity to remote devices
CN110032835A (zh) * 2019-02-21 2019-07-19 上海会宝信息技术有限公司 一种防止软件复制与迁移的软加密技术
CN110891187A (zh) * 2019-11-30 2020-03-17 广西广播电视信息网络股份有限公司 一种家庭智能终端的节目授权控制方法

Similar Documents

Publication Publication Date Title
US7272830B2 (en) Ordering program data for loading on a device
US8225281B1 (en) Automated baseline deployment system
US20030056054A1 (en) Virtual machine with securely distributed bytecode verification
CN111914303B (zh) Linux系统运行时状态的安全度量与安全验证方法
US20220198003A1 (en) Detecting added functionality in open source package
CN110968437A (zh) 一种基于Java智能合约的单个合约并行执行的方法、装置、设备及介质
US20110289323A1 (en) Signing program data payload sequence in progrm loading
CN111598575A (zh) 业务流程控制方法、装置、电子设备和可读存储介质
CN113434582B (zh) 业务数据处理方法、装置、计算机设备和存储介质
US20040143739A1 (en) Run time code integrity checks
US11722324B2 (en) Secure and accountable execution of robotic process automation
US8490184B2 (en) Verification for computer programs that include external call references
CN112085611A (zh) 数据异步核验方法、装置、电子设备及存储介质
CN109002710A (zh) 一种检测方法、装置及计算机可读存储介质
CN115086047B (zh) 接口鉴权方法、装置、电子设备及存储介质
CN111368263A (zh) 一种客户授权方法
CN115774672A (zh) 测试用例的生成方法、生成装置、服务器和存储介质
CN117009972A (zh) 漏洞检测方法、装置、计算机设备和存储介质
EP2009565A1 (en) Method for securely loading a client applet in an electronic portable device
CN113420288A (zh) 一种容器镜像敏感信息检测系统及方法
CN112667441A (zh) 基于容错功能的业务模块调度方法、系统及存储介质
CN104484198A (zh) 一种安装应用程序的方法和装置
US11743327B2 (en) Topological ordering of blockchain associated proposals
CN115001805B (zh) 单点登录方法、装置、设备及存储介质
CN112052034B (zh) 计算接口构建方法、装置、计算机设备及可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200703

RJ01 Rejection of invention patent application after publication