[发明专利]一种安全控制系统、方法、装置及存储介质在审
申请号: | 201910607513.1 | 申请日: | 2019-07-04 |
公开(公告)号: | CN112182637A | 公开(公告)日: | 2021-01-05 |
发明(设计)人: | 徐海勇;马龙;陶涛;黄岩;潘宇轩;侯雁;徐萌 | 申请(专利权)人: | 中移信息技术有限公司;中移(苏州)软件技术有限公司;中国移动通信集团有限公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62 |
代理公司: | 北京派特恩知识产权代理有限公司 11270 | 代理人: | 王姗姗;张颖玲 |
地址: | 518048 广东省深圳市福*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 安全 控制系统 方法 装置 存储 介质 | ||
本发明公开了一种安全控制系统、方法、装置及存储介质,系统包括:规则数据库,用于存储设置的安全访问规则;数据库语言解析器,用于基于用户访问数据库时选择的数据库类别,解析用户输入的数据库操作语句,得到操作单元列表;安全控制器,用于提取规则数据库中的安全访问规则;将数据库语言解析器解析出的操作单元列表与安全访问规则进行匹配,得到匹配结果;基于匹配结果进行数据库的访问安全控制;其中,不同类别的数据库对应的语言解析器使用统一的解析调用接口,解析调用接口用于匹配安全访问规则。如此,通过安全控制器能够对多类别数据库的访问进行安全控制,此外,针对用户输入的数据库类别,均能实现对不同数据库操作语句的解析。
技术领域
本发明涉及计算机数据处理领域,尤其涉及一种安全控制系统、方法、装置及存储介质。
背景技术
现有的多类别数据库访问方式有Apache Zeppelin,Apache Zeppelin是一个提供数据摄入,数据发现,数据分析和数据可视化与协作的多用途数据访问系统。Zeppelin支持多语言后端,目前支持的语言后端有Apache Spark,Python,JDBC,Markdown和shell等。
Apache Zeppelin虽然可以提供不同类别的数据库的远程访问,但其更加侧重于对远程不同数据库中内容的读取,分析并形成可视化的结果。除了远程数据库自身的安全策略外,Zeppelin并没有提供更多的数据访问安全控制方法。而数据库自身的安全策略往往比较单一,比如只能限制用户是否可以创建表,且安全策略往往并不完全符合实际的生产环境需求,所以现有的多类别数据库访问在实际生产环境中,往往不够安全。
发明内容
有鉴于此,本发明实施例期望提供一种安全控制系统、方法、装置及存储介质,能够对多类别数据库的访问进行安全控制。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供一种安全控制系统,所述系统包括:
规则数据库,用于存储设置的安全访问规则;
数据库语言解析器,用于基于用户访问数据库时选择的数据库类别,解析所述用户输入的数据库操作语句,得到操作单元列表;
安全控制器,用于提取所述规则数据库中的安全访问规则;将所述数据库语言解析器解析出的操作单元列表与所述安全访问规则进行匹配,得到匹配结果;基于所述匹配结果进行数据库的访问安全控制;
其中,不同类别的数据库对应的语言解析器使用统一的解析调用接口,所述解析调用接口用于匹配所述安全访问规则。
上述方案中,所述数据库语言解析器具体用于:
针对不同类别的数据库,分别设置对应的特定格式的词法文件和语法文件;
基于所述词法文件和语法文件,生成各类别数据库对应的特定语言解析策略;
基于所述特定语言解析策略解析数据库操作语句,得到操作单元列表。
上述方案中,所述数据库语言解析器具体用于:
针对各类别的数据库,分别查询官方语法文件;
设置所述特定格式的词法文件,所述词法文件至少包括:所述官方语法文件中的操作信息;
基于所述词法文件设置所述特定格式的语法文件,所述语法文件至少包括:所述官方语法文件中的语法信息。
上述方案中,所述数据库语言解析器具体用于:
将数据库操作语句转换成树形结构;
对所述树形结构进行解析,得到操作类型和操作对象。
上述方案中,所述安全控制器还用于:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中移信息技术有限公司;中移(苏州)软件技术有限公司;中国移动通信集团有限公司,未经中移信息技术有限公司;中移(苏州)软件技术有限公司;中国移动通信集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910607513.1/2.html,转载请声明来源钻瓜专利网。