CN112464212A - 基于成熟复杂业务系统的数据权限控制改造方法 - Google Patents
基于成熟复杂业务系统的数据权限控制改造方法 Download PDFInfo
- Publication number
- CN112464212A CN112464212A CN202010236658.8A CN202010236658A CN112464212A CN 112464212 A CN112464212 A CN 112464212A CN 202010236658 A CN202010236658 A CN 202010236658A CN 112464212 A CN112464212 A CN 112464212A
- Authority
- CN
- China
- Prior art keywords
- target
- data
- rule
- result
- target service
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/45—Structures or tools for the administration of authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供一种基于成熟复杂业务系统的数据权限控制改造方法,用于对目标业务系统进行改造,包括:配置若干业务操作请求分别对应的鉴权规则;拦截所述目标业务系统接收到的目标业务操作请求,所述目标业务操作请求携带目标业务及目标数据;检测是否配置有所述目标业务操作请求对应的所述鉴权规则;未配置时,放行所述目标业务操作请求;已配置时,根据检测到的鉴权规则,校验当前登录用户的用户信息和角色信息是否具有对所述目标业务及目标数据进行操作的权限,若是,则放行所述目标业务操作请求,否则,阻止并记录所述目标业务操作请求。本发明可以在避免对成熟复杂的已有系统进行侵入式改造的前提下,提高系统安全性。
Description
技术领域
本发明涉及数据安全领域,尤其涉及一种基于成熟复杂业务系统的数据权限控制改造方法。
背景技术
目前,有一些业务系统庞大并存在比较复杂的业务逻辑,但在设计初期从安全角度的考虑并不详细。
例如,现有的电子采购系统,最初的定位与企业的ERP(企业资源计划)等系统类似,是一个面向企业内部使用的管理系统。但是,随着互联网技术的发展和国家及企业对于信息安全的日益重视,此类系统的安全修复和提升工作的需求日益迫切。如今电子采购系统正逐步向互联网采购平台进行转变,同时业务逻辑中也不可避免的涉及到投标人这类管控有限的外部用户。因此对成熟复杂的采购业务系统进行更高标准的安全升级改造成了必然要面对的问题。
在采购系统的安全升级过程中,数据权限是最为难处理的一个问题,主要体现在以下几个方面:采购业务涉及招标方、投标方、招标代理机构、评标专家、监督部门等多个主体,数据需要根据业务规则和管理制度在多个主体间传递查看,规则复杂多样且容易变化,难以抽象出一个明确的权限控制规则,因此普遍采用RBAC(Role-Based Access Control,基于角色的权限访问控制)方法进行基于角色的纵向权限控制,然而横向控制薄弱。在本申请中,纵向权限控制是指控制不同角色用户之间对功能和方法的访问和执行权限,横向权限控制是指进行平级用户之间的横向数据隔离。
传统横向数据权限控制实现方案需要将权限控制逻辑编码入所有需权限管理业务的业务代码中,即,对整个系统进行侵入式的改造。这对于庞大且涉及到复杂业务逻辑的系统而言,涉及的功能点过多,与业务代码逻辑深度耦合,难以灵活应对不同客户的管理控制需求,每次变更都带来比较大的工作量。
发明内容
针对上述现有技术的不足,本发明的目的在于提供一种基于成熟复杂业务系统的数据权限控制改造方法,以在避免对成熟复杂的已有系统进行侵入式改造的前提下,提高系统安全性。
为了实现上述目的,本发明提供一种基于成熟复杂业务系统的数据权限控制改造方法,用于对目标业务系统进行改造,所述改造方法包括:
配置若干业务操作请求分别对应的鉴权规则;
拦截所述目标业务系统接收到的目标业务操作请求,所述目标业务操作请求携带目标业务及目标数据;
检测是否配置有所述目标业务操作请求对应的所述鉴权规则;
当未配置所述目标业务操作请求对应的鉴权规则时,放行所述目标业务操作请求;
当检测到配置有所述目标业务操作请求对应的鉴权规则时,根据检测到的鉴权规则,校验当前登录用户的用户信息和角色信息是否具有对所述目标业务及目标数据进行操作的权限,若是,则放行所述目标业务操作请求,否则,阻止并记录所述目标业务操作请求。
在本发明一个优选实施例中,所述改造方法还包括:
通过注解配置若干行业务数据对应的行查询权限规则,所述行查询权限规则包含对相应行业务数据具有查询权限的用户信息和角色信息;
拦截所述目标业务系统中的数据库查询语句;
检测是否配置有所述数据库查询语句对应的行查询权限规则;
当未配置所述数据库查询语句对应的行查询权限规则时,根据所述数据库查询语句继续进行数据查询;
当检测到配置有所述数据库查询语句对应的行查询权限规则时,根据检测到的行查询权限规则与当前登录用户的身份信息和角色信息对所述数据库查询语句进行调整,而后根据调整后的数据库查询语句进行数据查询。
在本发明一个优选实施例中,所述改造方法还包括:
配置若干列业务数据对应的查看规则和脱敏规则;
拦截所述目标业务系统查询到的业务数据查询结果;
检测是否配置有所述业务数据查询结果对应的查看规则和脱敏规则;
当未配置所述业务数据查询结果对应的查看规则和脱敏规则时,放行所述业务数据查询结果;
当检测到配置有所述业务数据查询结果对应的查看规则和脱敏规则时,根据检测到的查看规则、脱敏规则以及当前登录用户的身份信息和角色信息。
在本发明一个优选实施例中,所述改造方法还包括在所述目标业务系统中增加以下逻辑功能:
当接收到对预设基础信息的操作请求时,校验当前登录用户是否具有对所述基础信息执行所述操作请求的权限,并根据校验结果执行相应操作。
在本发明一个优选实施例中,所述改造方法还包括:
获取当前登录用户输入的目标URL;
将所述目标URL拆分为关键信息与非关键信息;
将获取到的所述关键信息与所述当前登录用户的登录标识进行拼接,得到第一拼接结果;
对所述第一拼接结果进行非对称加密,得到第一加密结果;
将所述第一加密结果与所述非关键信息进行拼接,得到拼接URL后发送到服务端,以使所述服务端拦截到所述拼接URL后,提取所述拼接URL中的第一加密结果,并对所述第一加密结果进行解密,若解密失败,则阻止并记录所述拼接URL,若解密成功,则从解密获得的第一拼接结果中获取所述登录标识并对所述登录标识进行鉴权,若鉴权失败,则阻止并记录所述拼接URL,若鉴权成功,则从解密获得的第一拼接结果中获取所述关键信息,并将获取到的所述关键信息与所述拼接URL中的所述非关键信息进行拼接,以还原所述目标URL并放行。
在本发明一个优选实施例中,所述改造方法还包括:
获取当前登录用户输入的表单提交请求,所述表单提交请求携带目标表单;
按所述目标表单中各表单变量的首字母顺序对所述各表单变量进行排序;
根据预设摘要规则计算排序后的所述各表单变量的表单摘要;
将所述表单摘要与所述当前登录用户的登录标识进行拼接,得到第二拼接结果;
对所述第二拼接结果进行非对称加密,得到第二加密结果;
将所述第二加密结果拼接至所述表单提交请求的目标表单中;
将拼接后的所述表单提交请求发送到服务端,以使所述服务端在接收到所述表单提交请求后,检测所述表单提交请求的目标表单中是否拼接有所述第二加密结果,当未拼接所述第二加密结果且所述表单提交请求为POST请求时,拦截所述表单提交请求,当拼接有所述第二加密结果时,对所述第二加密结果进行解密,得到所述表单摘要与所述当前登录用户的登录标识,并对所述登录标识进行鉴权,若鉴权失败,则拦截所述表单提交请求,若鉴权成功,按所述目标表单中各表单变量的首字母顺序对所述各表单变量进行排序,并根据所述预设摘要规则计算排序后的所述各表单变量的表单摘要,判断计算得到的表单摘要与解密得到的表单摘要是否一致,若不一致,则拦截所述表单提交请求。
在本发明一个优选实施例中,所述根据预设摘要规则包括:
对排序后的所述各表单变量进行MD5或SM3运算。
为了实现上述目的,本发明还提供一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现前述方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现前述方法的步骤。
通过采用上述技术方案,本发明具有如下有益效果:
对于需要横向权限控制的关键点业务数据,本发明采用了拦截、配置结合的方式进行权限控制,当拦截到目标业务操作请求后,首先检测所述目标业务操作请求是否配置有对应的鉴权规则,若未配置,说明不需要权限控制,直接放行,若配置有,则根据配置的鉴权规则进行鉴权,当鉴权不成功时,则对目标业务操作请求进行拦截。从而,可以通过配置方式在零业务代码修改的情况下增加横向权限控制功能,同时结合配置热生效的功能,可以实现数据权限漏洞的在线修补。
附图说明
图1为本发明基于成熟复杂业务系统的数据权限控制改造方法的第一个实施例的流程图;
图2为本发明基于成熟复杂业务系统的数据权限控制改造方法的第二个实施例的流程图;
图3为本发明基于成熟复杂业务系统的数据权限控制改造方法的第三个实施例的流程图;
图4为本发明基于成熟复杂业务系统的数据权限控制改造方法的第四个实施例的流程图;
图5为本发明基于成熟复杂业务系统的数据权限控制改造方法的第五个实施例的流程图;
图6为本发明基于成熟复杂业务系统的数据权限控制改造方法的第六个实施例的流程图;
图7为本发明计算机设备的硬件架构图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本公开。在本公开和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
实施例一
本实施例提供一种基于成熟复杂业务系统的数据权限控制改造方法,用于对已有的目标业务系统进行改造,如图1所示,该改造方法包括以下步骤:
S11,对于关键业务点数据,配置这些关键业务点数据的业务操作请求分别对应的鉴权规则,所述鉴权规则包含对相应业务操作请求具有权限的用户对应的用户信息和角色信息。在本实施例中,可以通过SQL语句进行规则配置,例如,当目标业务系统中存储有一业务数据表,且该业务数据表中存储有某项目的业务数据以及该项目相关的用户对应的用户信息和角色信息时,可以通过SQL语法配置与该业务数据的查询请求对应的权限规则如下:当输入的用户信息和角色信息与该业务数据表中的用户信息和角色信息均匹配,鉴权成功,否则,鉴权失败。此外,还可以通过微服务接口进行配置,例如,当某微服务本身存储有对某业务操作请求具有权限的用户对应的用户信息和角色信息时,可以配置权限规则如下:微服务接口传送待鉴权的用户信息和角色信息至该微服务,当该微服务返回不为0时,鉴权成功,否则,鉴权失败。
S12,通过拦截器拦截所述目标业务系统接收到的目标业务操作请求,所述目标业务操作请求携带目标业务及目标数据。
S13,检测是否配置有所述目标业务操作请求对应的鉴权规则。
S14,当未配置所述目标业务操作请求对应的鉴权规则时,说明不需对该目标业务操作请求进行鉴权,则放行所述目标业务操作请求。
S15,当检测到配置有所述目标业务操作请求对应的鉴权规则时,根据检测到的鉴权规则,校验当前登录用户的用户信息和角色信息是否具有对所述目标业务及目标数据进行操作的权限,若是,说明鉴权成功,则放行所述目标业务操作请求,否则,说明鉴权不成功,该目标业务操作请求需要拦截,则阻止并记录所述目标业务操作请求。
例如,当通过SQL语句配置鉴权规则时,SQL语句中可以采用“#”将用户信息变量和角色信息变量包裹,如selectcount(1)fromuser,rolewhereuser=#user#androle=#role#anduser.role=role.id,校验时,则将当前登录用户的用户信息和角色信息分别替换掉#user#和#role#后再执行该SQL语句,并根据返回结果判断是否鉴权成功。当通过微服务接口配置鉴权规则时,则将当前登录用户的用户信息和角色信息封装为map传入微服务接口,并根据对应微服务的返回结果判断是否鉴权成功。
可见,对于需要横向权限控制的关键点业务数据,本发明采用了拦截、配置结合的方式进行权限控制,当拦截到目标业务操作请求后,首先检测所述目标业务操作请求是否配置有对应的鉴权规则,若未配置,说明不需要权限控制,直接放行,若配置有,则根据配置的鉴权规则进行鉴权,当鉴权不成功时,则对目标业务操作请求进行拦截。从而,可以通过配置方式在零业务代码修改的情况下增加横向权限控制功能,同时结合配置热生效的功能,可以实现数据权限漏洞的在线修补。
实施例二
本实施例与前述实施例的区别在于,对于需要精确到行数据权限控制的情况,本发明的改造方法还包括图2所示的步骤:
S21,对于权限控制需精确到行的业务数据,通过mapper接口注解配置这些行的业务数据对应的行查询权限规则,所述行查询权限规则包含对相应行业务数据不具有查询权限的用户信息和角色信息。例如,若某行业务数据指定的用户无权进行查询,则配置有该行业务数据对应的行查询权限规则。
S22,通过拦截器拦截所述目标业务系统中的数据库查询语句。
S23,检测是否配置有所述数据库查询语句对应的行查询权限规则。
S24,当未配置所述数据库查询语句对应的行查询权限规则时,放行所述目标查询请求。
S25,当检测到配置有所述数据库查询语句对应的行查询权限规则时,根据检测到的行查询权限规则与所述当前登录用户的身份信息和角色信息对所述数据库查询语句进行调整,而后根据调整后的数据库查询语句进行数据查询。。
例如,假设A用户请求查询行编号为1-10的业务数据,而步骤S21中配置有A用户对行编号为7的业务数据不具有查询权限的查询权限规则,则步骤S25在数据库查询语句的查询条件中拼接“行编号≠7”,然后将拼接修饰后的查询语句放行,以便后续根据拼接修饰后的查询语句进行查询。从而,可以精确到行数据权限控制。
实施例三
本实施例与前述实施例的区别在于,对于需要精确到列数据权限控制的情况,本发明的改造方法还包括图3所示的步骤:
S31,对于权限控制需精确到列的业务数据,配置这些列的业务数据对应的查看规则和脱敏规则。所述查看规则包含对相应列业务数据不具有查询权限的用户信息和角色信息。例如,若某列业务数据指定的用户无权进行查询,则配置有该列业务数据对应的行查询权限规则。所述脱敏规则包含对该列业务数据进行脱敏的脱敏方式。
S32,通过拦截器拦截所述目标业务系统查询到的业务数据查询结果。
S33,检测是否配置有所述业务数据查询结果对应的查看规则和脱敏规则。
S34,当未配置所述业务数据查询结果对应的查看规则和脱敏规则时,放行所述业务数据查询结果。
S35,当检测到配置有所述业务数据查询结果对应的查看规则和脱敏规则时,根据检测到的查看规则、脱敏规则以及当前登录用户的身份信息和角色信息对所述业务数据查询结果进行处理。
例如,假设步骤S31中配置有B用户对列编号为7的业务数据不具有查询权限的查看规则、以及将该列数据替换为“*”号进行脱敏的脱敏规则;步骤S32拦截到的业务数据查询结果为列编号为1-10的业务数据;如果当前登录用户为B用户,则步骤S35将所述业务数据查询结果中列编号为7的业务数据替换为“*”号。从而,可以精确到列数据权限控制。
实施例四
对于部分性能要求较高、越权危害严重、控制逻辑基本固化的功能(主要是基础信息管理等功能),本发明选择将权限控制逻辑嵌入业务代码中。本实施例与前述实施例的区别在于,在所述目标业务系统中增加图4所示的逻辑功能:
S41,当接收到对预设基础信息的操作请求时,校验当前登录用户是否具有对所述基础信息执行所述操作请求的权限;
S42,根据校验结果执行相应操作。
以用户基本信息为例,可以添加了如下几段控制逻辑:当接收到修改密码请求时,从该请求中获取用户id,与当前登录用户id进行匹配,若不匹配,则判断为发生越权,阻断操作,若匹配,则根据该修改密码请求进行密码修改。当接收到修改用户基本信息请求时,同样从该请求中获取用户id与当前登录用户id进行匹配校验,若不匹配,则判断为发生越权,阻断操作,若匹配,则根据该请求进行用户基本信息修改。当接收到用户信息查询请求时,如果从该请求中获取的用户id与当前登录用户id不匹配,则校验请求中的用户id与当前登录用户id的关系,如满足规则(如上下级、同公司),则展示部分非敏感内容。
本发明综合考虑控制规则变更频率、越权发生的危害程度、调整和影响范围、对性能带来的损耗,给出了前述四个实施列的权限解决方案,能够在控制修改范围和工作量的前提下,完成数据权限问题的修复和升级工作。
实施例五
本实施例与前述实施例的区别在于,本发明的改造方法还包括图5所示的步骤:
S51,获取当前登录用户输入的目标URL。
S52,将所述目标URL拆分为关键信息与非关键信息,通常前面部分为关键信息,后面部分为非关键信息。
S53,将获取到的所述关键信息与所述当前登录用户的登录标识进行拼接,得到第一拼接结果。
S54,对所述第一拼接结果进行非对称加密(如RSA加密),得到第一加密结果。
S55,将所述第一加密结果与所述非关键信息进行拼接,得到拼接URL后发送到服务端,以使所述服务端拦截到所述拼接URL后,提取所述拼接URL中的第一加密结果,并对所述第一加密结果进行解密,若解密失败,则阻止并记录所述拼接URL,若解密成功,则从解密获得的第一拼接结果中获取所述登录标识并对所述登录标识进行鉴权,若鉴权失败,则阻止并记录所述拼接URL,若鉴权成功,则从解密获得的第一拼接结果中获取所述关键信息,并将获取到的所述关键信息与所述拼接URL中的所述非关键信息进行拼接,还原所述目标URL并放行。
通过上述步骤,本实例可以避免链接盗用的情况发生。
实施例六
本实施例与前述实施例的区别在于,本发明的改造方法还包括图6所示的步骤:
S61,获取当前登录用户输入的表单提交请求,所述表单提交请求携带目标表单。
S62,按所述目标表单中各表单变量的首字母顺序对所述各表单变量进行排序。
S63,根据预设摘要规则计算排序后的所述各表单变量的表单摘要,在实施例中,预设的摘要规则为对排序后的所述各表单变量进行MD5或SM3等运算。
S64,将所述表单摘要与所述当前登录用户的登录标识进行拼接,得到第二拼接结果。
S65,对所述第二拼接结果进行非对称加密,得到第二加密结果。
S66,将所述第二加密结果拼接至所述表单提交请求的目标表单中。
S67,将拼接后的所述表单提交请求发送到服务端,以使所述服务端在接收到所述表单提交请求后,检测所述表单提交请求的目标表单中是否拼接有所述第二加密结果,当未拼接所述第二加密结果且所述表单提交请求为POST请求时,拦截所述表单提交请求,当拼接有所述第二加密结果时,对所述第二加密结果进行解密,得到所述表单摘要与所述当前登录用户的登录标识,并对所述登录标识进行鉴权,若鉴权失败,则拦截所述表单提交请求,若鉴权成功,按所述目标表单中各表单变量的首字母顺序对所述各表单变量进行排序,并根据所述预设摘要规则计算排序后的所述各表单变量的表单摘要,判断计算得到的表单摘要与解密得到的表单摘要是否一致,若不一致,则拦截所述表单提交请求。
通过上述步骤,本实施例可以避免表单请求被篡改或被盗用的情况发生。
本发明在全站性防篡改功能的基础上,前述多种控制方案可以结合实际情况组合使用,以满足不同业务场景对数据权限的需求。
实施例七
本实施例提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备10至少包括但不限于:可通过系统总线相互通信连接的存储器11、处理器12,如图3所示。需要指出的是,图7仅示出了具有组件11-12的计算机设备10,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器11(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器11可以是计算机设备10的内部存储单元,例如该计算机设备10的硬盘或内存。在另一些实施例中,存储器11也可以是计算机设备10的外部存储设备,例如该计算机设备10上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器11还可以既包括计算机设备10的内部存储单元也包括其外部存储设备。本实施例中,存储器11通常用于存储安装于计算机设备10的操作系统和各类应用软件,例如用于存储实现实施例一至六的改造方法的程序代码等。此外,存储器11还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器12在一些实施例中可以是中央处理器(CentralProcessing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器12通常用于控制计算机设备10的总体操作。本实施例中,处理器12用于运行存储器11中存储的程序代码或者处理数据。
实施例八
本实施例提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器执行时实现相应功能。本实施例的计算机可读存储介质可用于存储实施例一至六的改造方法。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (9)
1.一种基于成熟复杂业务系统的数据权限控制改造方法,用于对目标业务系统进行改造,其特征在于,所述改造方法包括:
配置若干业务操作请求分别对应的鉴权规则;
拦截所述目标业务系统接收到的目标业务操作请求,所述目标业务操作请求携带目标业务及目标数据;
检测是否配置有所述目标业务操作请求对应的所述鉴权规则;
当未配置所述目标业务操作请求对应的鉴权规则时,放行所述目标业务操作请求;
当检测到配置有所述目标业务操作请求对应的鉴权规则时,根据检测到的鉴权规则,校验当前登录用户的用户信息和角色信息是否具有对所述目标业务及目标数据进行操作的权限,若是,则放行所述目标业务操作请求,否则,阻止并记录所述目标业务操作请求。
2.根据权利要求1所述的基于成熟复杂业务系统的数据权限控制改造方法,其特征在于,所述改造方法还包括:
通过注解配置若干行业务数据对应的行查询权限规则,所述行查询权限规则包含对相应行业务数据具有查询权限的用户信息和角色信息;
拦截所述目标业务系统中的数据库查询语句;
检测是否配置有所述数据库查询语句对应的行查询权限规则;
当未配置所述数据库查询语句对应的行查询权限规则时,根据所述数据库查询语句继续进行数据查询;
当检测到配置有所述数据库查询语句对应的行查询权限规则时,根据检测到的行查询权限规则与当前登录用户的身份信息和角色信息对所述数据库查询语句进行调整,而后根据调整后的数据库查询语句进行数据查询。
3.根据权利要求1所述的基于成熟复杂业务系统的数据权限控制改造方法,其特征在于,所述改造方法还包括:
配置若干列业务数据对应的查看规则和脱敏规则;
拦截所述目标业务系统查询到的业务数据查询结果;
检测是否配置有所述业务数据查询结果对应的查看规则和脱敏规则;
当未配置所述业务数据查询结果对应的查看规则和脱敏规则时,放行所述业务数据查询结果;
当检测到配置有所述业务数据查询结果对应的查看规则和脱敏规则时,根据检测到的查看规则、脱敏规则以及当前登录用户的身份信息和角色信息对所述业务数据查询结果进行处理。
4.根据权利要求1所述的基于成熟复杂业务系统的数据权限控制改造方法,其特征在于,所述改造方法还包括在所述目标业务系统中增加以下逻辑功能:
当接收到对预设基础信息的操作请求时,校验当前登录用户是否具有对所述基础信息执行所述操作请求的权限,并根据校验结果执行相应操作。
5.根据权利要求1所述的基于成熟复杂业务系统的数据权限控制改造方法,其特征在于,所述改造方法还包括:
获取当前登录用户输入的目标URL;
将所述目标URL拆分为关键信息与非关键信息;
将获取到的所述关键信息与所述当前登录用户的登录标识进行拼接,得到第一拼接结果;
对所述第一拼接结果进行非对称加密,得到第一加密结果;
将所述第一加密结果与所述非关键信息进行拼接,得到拼接URL后发送到服务端,以使所述服务端拦截到所述拼接URL后,提取所述拼接URL中的第一加密结果,并对所述第一加密结果进行解密,若解密失败,则阻止并记录所述拼接URL,若解密成功,则从解密获得的第一拼接结果中获取所述登录标识并对所述登录标识进行鉴权,若鉴权失败,则阻止并记录所述拼接URL,若鉴权成功,则从解密获得的第一拼接结果中获取所述关键信息,并将获取到的所述关键信息与所述拼接URL中的所述非关键信息进行拼接,以还原所述目标URL并放行。
6.根据权利要求1所述的基于成熟复杂业务系统的数据权限控制改造方法,其特征在于,所述改造方法还包括:
获取当前登录用户输入的表单提交请求,所述表单提交请求携带目标表单;
按所述目标表单中各表单变量的首字母顺序对所述各表单变量进行排序;
根据预设摘要规则计算排序后的所述各表单变量的表单摘要;
将所述表单摘要与所述当前登录用户的登录标识进行拼接,得到第二拼接结果;
对所述第二拼接结果进行非对称加密,得到第二加密结果;
将所述第二加密结果拼接至所述表单提交请求的目标表单中;
将拼接后的所述表单提交请求发送到服务端,以使所述服务端在接收到所述表单提交请求后,检测所述表单提交请求的目标表单中是否拼接有所述第二加密结果,当未拼接所述第二加密结果且所述表单提交请求为POST请求时,拦截所述表单提交请求,当拼接有所述第二加密结果时,对所述第二加密结果进行解密,得到所述表单摘要与所述当前登录用户的登录标识,并对所述登录标识进行鉴权,若鉴权失败,则拦截所述表单提交请求,若鉴权成功,按所述目标表单中各表单变量的首字母顺序对所述各表单变量进行排序,并根据所述预设摘要规则计算排序后的所述各表单变量的表单摘要,判断计算得到的表单摘要与解密得到的表单摘要是否一致,若不一致,则拦截所述表单提交请求。
7.根据权利要求6所述的基于成熟复杂业务系统的数据权限控制改造方法,其特征在于,所述根据预设摘要规则包括:
对排序后的所述各表单变量进行MD5或SM3运算。
8.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010236658.8A CN112464212B (zh) | 2020-03-30 | 2020-03-30 | 基于成熟复杂业务系统的数据权限控制改造方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010236658.8A CN112464212B (zh) | 2020-03-30 | 2020-03-30 | 基于成熟复杂业务系统的数据权限控制改造方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112464212A true CN112464212A (zh) | 2021-03-09 |
CN112464212B CN112464212B (zh) | 2023-02-10 |
Family
ID=74832863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010236658.8A Active CN112464212B (zh) | 2020-03-30 | 2020-03-30 | 基于成熟复杂业务系统的数据权限控制改造方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112464212B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113449323A (zh) * | 2021-07-17 | 2021-09-28 | 绿漫科技有限公司 | 一种结合权限控制的数据隔离系统 |
CN113568764A (zh) * | 2021-07-29 | 2021-10-29 | 工银科技有限公司 | 用于微服务的用户信息获取方法、装置、设备及介质 |
CN113672903A (zh) * | 2021-10-22 | 2021-11-19 | 深圳市信润富联数字科技有限公司 | 密码管理方法、电子装置、装置及可读存储介质 |
CN115423578A (zh) * | 2022-09-01 | 2022-12-02 | 广东博成网络科技有限公司 | 基于微服务容器化云平台的招投标方法和系统 |
CN116756727A (zh) * | 2023-08-22 | 2023-09-15 | 浙江华东工程数字技术有限公司 | 一种数据权限控制方法、装置、电子设备和存储介质 |
CN116781425A (zh) * | 2023-08-21 | 2023-09-19 | 太平金融科技服务(上海)有限公司深圳分公司 | 一种业务数据获取方法、装置、设备及存储介质 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005258591A (ja) * | 2004-03-09 | 2005-09-22 | Hitachi Information Systems Ltd | データベースアクセス制御システム |
WO2009115921A2 (en) * | 2008-02-22 | 2009-09-24 | Ipath Technologies Private Limited | Techniques for enterprise resource mobilization |
CN103593602A (zh) * | 2012-08-14 | 2014-02-19 | 深圳中兴网信科技有限公司 | 一种用户权限管理方法和系统 |
CN103853970A (zh) * | 2014-03-27 | 2014-06-11 | 浪潮软件集团有限公司 | 一种将多个web应用系统的操作权限集成的方法 |
CN104573478A (zh) * | 2014-11-20 | 2015-04-29 | 深圳市远行科技有限公司 | 一种Web应用的用户权限管理系统 |
CN106302492A (zh) * | 2016-08-23 | 2017-01-04 | 唐山新质点科技有限公司 | 一种访问控制方法及系统 |
CN107277038A (zh) * | 2017-07-18 | 2017-10-20 | 北京微影时代科技有限公司 | 访问控制方法、装置以及系统 |
WO2018028359A1 (zh) * | 2016-08-08 | 2018-02-15 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置、存储介质及电子装置 |
CA3147287A1 (en) * | 2016-10-19 | 2018-04-19 | Somos, Inc. | Toll-free telecommunications and data management platform |
CN109617926A (zh) * | 2019-01-28 | 2019-04-12 | 广东淘家科技有限公司 | 业务权限的控制方法、装置和存储介质 |
CN110690971A (zh) * | 2019-09-24 | 2020-01-14 | 陕西西部资信股份有限公司 | 基于USBKey的数据处理方法及系统 |
CN110727929A (zh) * | 2019-10-12 | 2020-01-24 | 北京明略软件系统有限公司 | 基于aop的行级权限控制方法、装置及客户端 |
-
2020
- 2020-03-30 CN CN202010236658.8A patent/CN112464212B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005258591A (ja) * | 2004-03-09 | 2005-09-22 | Hitachi Information Systems Ltd | データベースアクセス制御システム |
WO2009115921A2 (en) * | 2008-02-22 | 2009-09-24 | Ipath Technologies Private Limited | Techniques for enterprise resource mobilization |
CN103593602A (zh) * | 2012-08-14 | 2014-02-19 | 深圳中兴网信科技有限公司 | 一种用户权限管理方法和系统 |
CN103853970A (zh) * | 2014-03-27 | 2014-06-11 | 浪潮软件集团有限公司 | 一种将多个web应用系统的操作权限集成的方法 |
CN104573478A (zh) * | 2014-11-20 | 2015-04-29 | 深圳市远行科技有限公司 | 一种Web应用的用户权限管理系统 |
WO2018028359A1 (zh) * | 2016-08-08 | 2018-02-15 | 腾讯科技(深圳)有限公司 | 业务处理方法、装置、存储介质及电子装置 |
CN106302492A (zh) * | 2016-08-23 | 2017-01-04 | 唐山新质点科技有限公司 | 一种访问控制方法及系统 |
CA3147287A1 (en) * | 2016-10-19 | 2018-04-19 | Somos, Inc. | Toll-free telecommunications and data management platform |
CN107277038A (zh) * | 2017-07-18 | 2017-10-20 | 北京微影时代科技有限公司 | 访问控制方法、装置以及系统 |
CN109617926A (zh) * | 2019-01-28 | 2019-04-12 | 广东淘家科技有限公司 | 业务权限的控制方法、装置和存储介质 |
CN110690971A (zh) * | 2019-09-24 | 2020-01-14 | 陕西西部资信股份有限公司 | 基于USBKey的数据处理方法及系统 |
CN110727929A (zh) * | 2019-10-12 | 2020-01-24 | 北京明略软件系统有限公司 | 基于aop的行级权限控制方法、装置及客户端 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113449323A (zh) * | 2021-07-17 | 2021-09-28 | 绿漫科技有限公司 | 一种结合权限控制的数据隔离系统 |
CN113568764A (zh) * | 2021-07-29 | 2021-10-29 | 工银科技有限公司 | 用于微服务的用户信息获取方法、装置、设备及介质 |
CN113672903A (zh) * | 2021-10-22 | 2021-11-19 | 深圳市信润富联数字科技有限公司 | 密码管理方法、电子装置、装置及可读存储介质 |
CN115423578A (zh) * | 2022-09-01 | 2022-12-02 | 广东博成网络科技有限公司 | 基于微服务容器化云平台的招投标方法和系统 |
CN115423578B (zh) * | 2022-09-01 | 2023-12-05 | 广东博成网络科技有限公司 | 基于微服务容器化云平台的招投标方法和系统 |
CN116781425A (zh) * | 2023-08-21 | 2023-09-19 | 太平金融科技服务(上海)有限公司深圳分公司 | 一种业务数据获取方法、装置、设备及存储介质 |
CN116781425B (zh) * | 2023-08-21 | 2023-11-07 | 太平金融科技服务(上海)有限公司深圳分公司 | 一种业务数据获取方法、装置、设备及存储介质 |
CN116756727A (zh) * | 2023-08-22 | 2023-09-15 | 浙江华东工程数字技术有限公司 | 一种数据权限控制方法、装置、电子设备和存储介质 |
CN116756727B (zh) * | 2023-08-22 | 2023-12-29 | 浙江华东工程数字技术有限公司 | 一种数据权限控制方法、装置、电子设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112464212B (zh) | 2023-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112464212B (zh) | 基于成熟复杂业务系统的数据权限控制改造方法 | |
CN108900464B (zh) | 电子装置、基于区块链的数据处理方法和计算机存储介质 | |
CN110414268B (zh) | 访问控制方法、装置、设备及存储介质 | |
US20200159697A1 (en) | Immutable ledger with efficient and secure data destruction, system and method | |
CN108734028B (zh) | 基于区块链的数据管理方法、区块链节点及存储介质 | |
CN109657492B (zh) | 数据库管理方法、介质及电子设备 | |
CN111814133A (zh) | 移动应用统一登录方法及装置 | |
EP3552131B1 (en) | Password security | |
CN108777675B (zh) | 电子装置、基于区块链的身份验证方法和计算机存储介质 | |
CN105683990A (zh) | 用于保护动态库的方法和装置 | |
US20230412399A1 (en) | Database Multi-Authentication Method and System, Terminal, and Storage Medium | |
CN113472720B (zh) | 数字证书密钥处理方法、装置、终端设备及存储介质 | |
CN110555293A (zh) | 用于保护数据的方法、装置、电子设备和计算机可读介质 | |
US20220329446A1 (en) | Enhanced asset management using an electronic ledger | |
CN105915338A (zh) | 生成密钥的方法和系统 | |
CN110932859A (zh) | 用户信息的处理方法、装置、设备及可读存储介质 | |
CN114422197A (zh) | 一种基于策略管理的权限访问控制方法及系统 | |
CN111585995A (zh) | 安全风控信息传输、处理方法、装置、计算机设备及存储介质 | |
CN112328975A (zh) | 一种产品软件授权管理方法、终端设备及介质 | |
CN111291001A (zh) | 计算机文件的读取方法、装置、计算机系统及存储介质 | |
CN103336918A (zh) | 电子盘系统授权方法和装置 | |
CN105653932A (zh) | 软件升级验证的方法和装置 | |
US9122878B1 (en) | Software license management with drifting component | |
CN115935388A (zh) | 一种软件包安全发送方法、装置、设备及存储介质 | |
CN114003877A (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 | ||
CB02 | Change of applicant information |
Address after: 201206 room 1101, floor 11, building 6, No. 1599, Xinjinqiao Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Applicant after: SHANGHAI HUIZHAO INFORMATION TECHNOLOGY Co.,Ltd. Address before: 200433 room 1203-12, No.6 Weide Road, Yangpu District, Shanghai Applicant before: SHANGHAI HUIZHAO INFORMATION TECHNOLOGY Co.,Ltd. |
|
CB02 | Change of applicant information | ||
GR01 | Patent grant | ||
GR01 | Patent grant |