[发明专利]一种数据库权限实现方法和系统有效
| 申请号: | 201610187615.9 | 申请日: | 2016-03-29 |
| 公开(公告)号: | CN107239710B | 公开(公告)日: | 2020-06-16 |
| 发明(设计)人: | 李少辉;徐安华;王超;冯是聪 | 申请(专利权)人: | 北京明略软件系统有限公司 |
| 主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F21/45 |
| 代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 李红爽;凌齐文 |
| 地址: | 102218 北京市昌*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据库 权限 实现 方法 系统 | ||
1.一种数据库权限实现方法,其特征在于,所述方法包括:
对输入的结构化查询语言SQL查询语句进行解析,生成语法树;
通过所述语法树的元数据获得具有预设的描述形式的查询信息;
对所述查询信息的可操作权限进行验证,根据验证结果对通过所述查询信息查询到的数据信息执行相关操作;
其中,所述预设的描述形式包括:五元组形式;所述五元组包括数据库链接信息server、数据库名称database、表名称table、列名称column和权限类型privilege;
所述对所述查询信息的可操作权限进行验证,根据验证结果对通过所述查询信息查询到的数据信息执行相关操作包括:
当元组形式的查询信息中除privilege项以外的项包含元组形式的权限信息中除privilege项以外的项时,确定该查询信息中的privilege不可执行。
2.如权利要求1所述的数据库权限实现方法,其特征在于,
所述privilege包括:读取Select、插入Insert、修改Alter、删除drop和全部All;
所述All包括:所述Select、Insert、Alter和drop。
3.如权利要求2所述的数据库权限实现方法,其特征在于,所述通过所述语法树的元数据获得具有预设的描述形式的查询信息包括:
根据所述语法树的元数据获取与所述SQL查询语句的关键字相关的一个或多个第一server;
从所述一个或多个第一server中获取与所述SQL查询语句的关键字相关的一个或多个第一数据库;
从所述一个或多个第一数据库中获取与所述SQL查询语句的关键字相关的一个或多个第一数据表;
从所述一个或多个第一数据表中获取与所述SQL查询语句的关键字相关的一个或多个第一数据列;
将所述第一server、所述第一数据库、所述第一数据表、所述第一数据列和想要执行的privilege以所述五元组的形式形成所述查询信息。
4.如权利要求3所述的数据库权限实现方法,其特征在于,
所述对所述查询信息的可操作权限进行验证包括:
将所述五元组形式的查询信息中所包含的第一privilege项与预存的五元组形势的权限信息中所包含的第二privilege项相比较;并且,对于所述第一privilege项所包含的一个或多个操作分别判断是否与所述第二privilege项中包含的一个或多个可执行操作中的至少一个可执行操作相同;其中,所述第一privilege项和所述第二privilege项分别至少包括以下一种:Select、Insert、Alter、drop和All;
所述根据验证结果对通过所述查询信息查询到的数据信息执行相关操作包括:
当所述第二privilege项为All时,执行所述第一privilege项所包含的一个或多个操作;
当所述第二privilege项不为All,并且当所述第一privilege项所包含的一个操作与所述第二privilege项中的一个可执行操作相同时,执行所述可执行操作;
当所述第二privilege项不为All,并且当所述第一privilege项所包含的多个操作与所述第二privilege项中的多个可执行操作分别对应相同时,分别执行所述多个可执行操作。
5.如权利要求4所述的数据库权限实现方法,其特征在于,所述方法还包括;
对所述数据信息执行所述可执行操作以后,如果所述数据信息有变更,保存变更后的所述数据信息并更新相应的元数据;并对更新后的元数据的可操作权限进行更新;
其中,所述对更新后的元数据的可操作权限进行更新包括:对经过所述Insert和/或Alter操作的元数据进行数据权限的变更或删除,以及对经过所述drop操作的元数据进行数据权限的删除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京明略软件系统有限公司,未经北京明略软件系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610187615.9/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种安全漏洞检测的方法以及装置
- 下一篇:一种数据库行权限控制方法和系统





