[发明专利]基于二进制的数据库权限控制方法、设备、介质及系统在审
申请号: | 202011147596.X | 申请日: | 2020-10-23 |
公开(公告)号: | CN112287365A | 公开(公告)日: | 2021-01-29 |
发明(设计)人: | 叶正阳 | 申请(专利权)人: | 烽火通信科技股份有限公司 |
主分类号: | G06F21/60 | 分类号: | G06F21/60;G06F21/62 |
代理公司: | 武汉智权专利代理事务所(特殊普通合伙) 42225 | 代理人: | 李斯 |
地址: | 430000 湖北省武*** | 国省代码: | 湖北;42 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 二进制 数据库 权限 控制 方法 设备 介质 系统 | ||
本发明公开了一种基于二进制的数据库权限控制方法、设备、介质及系统,涉及大数据技术领域,本发明为每个数据领域指定唯一的二进制数,作为数据领域标签,每个数据领域对应一个用户组,根据用户申请的权限,将用户加入对应的用户组;用户查询数据时,对用户权限值与该数据的数据领域标签计算二进制“与”值,根据计算结果判断是否有权限查看该数据。解决了敏感数据对不同权限用户的响应,与普遍的判断字符串是否相等where语句来判断是否有权限的方法相比,该方法效率更高,响应更快,适用性广,不受数据库产品的限制,具有很强的通用性。
技术领域
本发明涉及大数据技术领域,具体涉及一种基于二进制的数据库权限控制方法、设备、介质及系统。
背景技术
随着网络规模越来越大,网络产生的数据也向海量巨量发展。其中一些有关联的结构化数据需要数据库来存储,从而进行关联分析。数据库的一大特点就是数据可以共享,而数据共享就会带来数据安全性问题。若不加以限制,就会造成数据泄露、更改和破坏。
为实现权限控制,现有技术通常针对不同权限的用户群体创建相应的表,但是拥有多个权限的用户查数据时就需要关联多个表,效率低。比如集团有A、B、C……等N个部门,每个部门统计自己员工个人隐私信息时,创建个部门自己的表,其他部门无权访问。部门员工可以访问部门表,但是不能查看其他员工薪资等信息,所以薪资等敏感信息还要另外收集。同时集团收集N个部门的表后,需要整合所有的表才可以查看所有人的信息。
现有技术为每个用户设立权限,根据用户权限提前设定能查哪些表的哪些字段。当用户查数据时先加载此信息,转成where语句查询。其缺陷是,Where语句中需要先加载信息,再转成where语句查询,还需要通过判断字符串是否相等,来决定是否有权限查询数据,效率低,响应慢。
发明内容
针对现有技术中存在的缺陷,本发明的目的在于提供一种基于二进制的数据库权限控制方法、设备、介质及系统,权限控制效率更高,响应更快。
为达到以上目的,本发明采取的技术方案是:一种基于二进制的数据库权限控制方法,包括以下步骤:
创建控制表,将敏感数据分为若干数据领域,为每个数据领域指定唯一的二进制数,作为数据领域标签;
不同数据领域的数据入库时,给数据打上对应的数据领域标签;
创建数据库用户组,每个数据领域对应一个用户组;用户申请数据库权限时,根据用户申请的权限,将用户加入对应的用户组;
用户与数据库建立连接时,获取用户对应的用户组,计算所有用户组对应的数据领域标签求和取反的值,作为用户权限值;
用户查询数据时,对用户权限值与该数据的数据领域标签计算二进制“与”值,根据计算结果判断是否有权限查看该数据。
在上述技术方案的基础上,将敏感数据分为若干数据领域,为每个数据领域指定唯一的二进制数,作为数据领域标签时,所述二进制值按位从小到大自增。
在上述技术方案的基础上,将敏感数据分为若干数据领域,为每个数据领域指定唯一的二进制数,作为数据领域标签时,将二进制数换算成十进制数进行存储。
在上述技术方案的基础上,用户查询数据时,对用户权限值与该数据的数据领域标签计算二进制“与”值,根据计算结果判断是否有权限查看该数据,具体包括以下步骤:
若用户查询某列敏感数据,采用用该列数据的数据领域标签与用户权限值计算“逻辑与”;若计算结果为0则返回正常数据,否则返回“被保护”;
若用户查询某行敏感数据,采用用该行数据的数据领域标签与用户权限值计算“逻辑与”;若计算结果为0则返回正常数据,否则不显示此行数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于烽火通信科技股份有限公司,未经烽火通信科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011147596.X/2.html,转载请声明来源钻瓜专利网。