一种基于展示权限控制的数据库敏感信息保护方法及系统技术方案

技术编号:38210392 阅读:9 留言:0更新日期:2023-07-21 17:01
本发明专利技术涉及一种基于展示权限控制的数据库敏感信息保护方法及系统,通过识别待判断表中存在配置了展示权限的字段以及响应权限设置采取对应的敏感信息处理,在原有数据库读写权限以外新建立展示权限,区别于原有读写权限判断执行,精确识别每条SQL语句的语义,使查询语句的执行和实际查询结果的反馈能够相互独立区分,可以实现语句的方便快捷的输入的同时而无需担心敏感信息泄漏,从而在解决敏感字段信息保护的同时,也能方便即席查询语句输入。也能方便即席查询语句输入。也能方便即席查询语句输入。

【技术实现步骤摘要】
一种基于展示权限控制的数据库敏感信息保护方法及系统


[0001]本专利技术涉及数据库处理及敏感信息保护
,尤其涉及一种基于展示权限控制的数据库敏感信息保护方法及系统。

技术介绍

[0002]在数据库领域,当前关系型数据库仍然是交易数据的主要载体。随着客户信息保护的监管要求越来越严格,基于关系型数据库的敏感信息保护越来越迫切。例如银行领域内的业务数据中包含了大量敏感的信息,如客户姓名、身份证号、手机号、家庭地址、账号、卡号、余额等,在手工查询这些数据时,容易出现敏感信息泄漏的问题,因此必须采取针对性保护措施。
[0003]现有技术中,针对关系型数据库的敏感信息保护方法大致包括数据库权限控制、字段内容加密存放和使用额外查询语句处理程序过滤敏感信息三种。其中,对于常用的关系型数据库,例如DB2/Oracle/MySQL等,数据库权限控制能够提供在表一级的权限选择可读/可写,以及更加细分的基于列的可读/可写权限控制。但是,在实际使用中,敏感信息通常来自表、列中的某些特定字段而非表或列的全部字段,因此针对表或列的权限控制过于粗略,同时若针对所有字段分别设定权限则会大大增加使用复杂性,运维人员必须牢记需要排除的字段并准确输入查询语句,造成运维操作使用困难,对人工查询使用非常不友好。
[0004]采用应用程序或数据库内加解密函数对字段内容加密存放,在查询后只能得到加密后的数据,必须由应用程序或加解密函数解密还原为明文,因此对于没有相应解密手段的使用过程,例如运维手工查询,可以起到敏感信息保护的作用。但是,采用字段加密方法意味着需要额外管理应用程序、加解密函数的使用权限,且可能由于应用程序、加解密函数的泄露造成更加严重的敏感信息风险。
[0005]编写查询语句处理程序的方法中,比如接收到发出的查询select*from T,依据T的表结构定义自行展开“*”得到字段列表,再查询系统权限表,排除查询权限不足的字段,拼接入select语句,从而得到过滤敏感信息后的查询结果。但是,由于应用端实现和数据库引擎实现不同,是扫描SQL字面字符而不是使用标准的SQL语法识别,从而在面对复杂语句时,很难正确处理查询逻辑,从而导致此类额外处理程序应用非常受限。

技术实现思路

[0006]为解决现有技术的不足,本专利技术提出一种基于展示权限控制的数据库敏感信息保护方法及系统,通过在原有数据库读写权限以外新建立展示权限,区别于原有读写权限判断执行,精确识别每条SQL语句的语义,使查询语句的执行和实际查询结果的反馈能够相互独立区分,可以实现语句的方便快捷的输入的同时而无需担心敏感信息泄漏,从而在解决敏感字段信息保护的同时,也能方便即席查询语句输入。
[0007]为实现以上目的,本专利技术所采用的技术方案包括:
[0008]一种基于展示权限控制的数据库敏感信息保护方法,其特征在于,包括:
[0009]S1、对数据库中涉及敏感信息的字段配置展示权限,所述展示权限的设定值包括对应字段的开启展示和关闭展示;
[0010]S2、解析接收到的SQL查询语句,获取SQL查询语句涉及的待判断表;
[0011]S3、识别待判断表中是否存在配置了展示权限的字段,当识别待判断表中不存在配置了展示权限的字段时,不进行敏感信息保护处理直接执行SQL查询语句;
[0012]S4、当识别待判断表中存在配置了展示权限的字段时,进一步识别各字段对应的展示权限设定值,当字段的展示权限设定值为开启展示时,不进行敏感信息保护处理直接执行SQL查询语句;
[0013]S5、当字段的展示权限设定值为关闭展示时,进行敏感信息保护处理后执行SQL查询语句;
[0014]S6、反馈SQL查询语句执行结果。
[0015]进一步地,所述展示权限配置在数据库引擎中,或,所述展示权限配置在独立的数据库查询引擎中。
[0016]进一步地,所述敏感信息保护处理包括:
[0017]将敏感字段替换为脱敏字符;
[0018]和,将包含敏感字段的表达式整体替换为脱敏字符。
[0019]进一步地,所述步骤S5还包括:
[0020]当字段的展示权限设定值为关闭展示时,进一步识别字段是否属于最终查询结果返回字段;
[0021]当字段不属于最终查询结果返回字段时,不进行敏感信息保护处理直接执行SQL查询语句;
[0022]当字段属于最终查询结果返回字段时,进行敏感信息保护处理后执行SQL查询语句。
[0023]进一步地,所述步骤S5还包括:
[0024]识别需要进行敏感信息保护处理的SQL查询语句的执行结果是否属于除查询以外其他SQL功能语句的数据来源;
[0025]当SQL查询语句的执行结果不属于除查询以外其他SQL功能语句的数据来源时,进行敏感信息保护处理后执行SQL查询语句;
[0026]当SQL查询语句的执行结果属于除查询以外其他SQL功能语句的数据来源时,不执行SQL查询语句并反馈错误信息。
[0027]进一步地,所述SQL查询语句的执行结果属于除查询以外其他SQL功能语句的数据来源包括:
[0028]将SQL查询语句的执行结果用于union、insert、update、delete或merge语句;
[0029]将SQL查询语句的执行结果用于存储过程、函数或触发器;
[0030]将SQL查询语句的执行结果用于物化视图。
[0031]本专利技术还涉及一种基于展示权限控制的数据库敏感信息保护系统,其特征在于,包括:
[0032]展示权限管理模块,用于对数据库中涉及敏感信息的字段配置展示权限;
[0033]SQL解析模块,用于解析接收到的SQL查询语句,获取SQL查询语句涉及的待判断
表;
[0034]第一识别模块,用于识别待判断表中是否存在配置了展示权限的字段;
[0035]第二识别模块,用于识别各字段对应的展示权限设定值;
[0036]第三识别模块,用于识别字段是否属于最终查询结果返回字段;
[0037]第四识别模块,用于识别需要进行敏感信息保护处理的SQL查询语句的执行结果是否属于除查询以外其他SQL功能语句的数据来源;
[0038]脱敏处理模块,用于进行敏感信息保护处理。
[0039]本专利技术还涉及一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
[0040]本专利技术还涉及一种电子设备,其特征在于,包括处理器和存储器;
[0041]所述存储器,用于存储展示权限;
[0042]所述处理器,用于通过调用展示权限,执行上述的方法。
[0043]本专利技术还涉及一种计算机程序产品,包括计算机程序和/或指令,其特征在于,该计算机程序和/或指令被处理器执行时实现上述方法的步骤。
[0044]本专利技术的有益效果为:
[0045]采用本专利技术所述基于展示权限控制的数据库敏感本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于展示权限控制的数据库敏感信息保护方法,其特征在于,包括:S1、对数据库中涉及敏感信息的字段配置展示权限,所述展示权限的设定值包括对应字段的开启展示和关闭展示;S2、解析接收到的SQL查询语句,获取SQL查询语句涉及的待判断表;S3、识别待判断表中是否存在配置了展示权限的字段,当识别待判断表中不存在配置了展示权限的字段时,不进行敏感信息保护处理直接执行SQL查询语句;S4、当识别待判断表中存在配置了展示权限的字段时,进一步识别各字段对应的展示权限设定值,当字段的展示权限设定值为开启展示时,不进行敏感信息保护处理直接执行SQL查询语句;S5、当字段的展示权限设定值为关闭展示时,进行敏感信息保护处理后执行SQL查询语句;S6、反馈SQL查询语句执行结果。2.如权利要求1所述的方法,其特征在于,所述展示权限配置在数据库引擎中,或,所述展示权限配置在独立的数据库查询引擎中。3.如权利要求1所述的方法,其特征在于,所述敏感信息保护处理包括:将敏感字段替换为脱敏字符;和,将包含敏感字段的表达式整体替换为脱敏字符。4.如权利要求1所述的方法,其特征在于,所述步骤S5还包括:当字段的展示权限设定值为关闭展示时,进一步识别字段是否属于最终查询结果返回字段;当字段不属于最终查询结果返回字段时,不进行敏感信息保护处理直接执行SQL查询语句;当字段属于最终查询结果返回字段时,进行敏感信息保护处理后执行SQL查询语句。5.如权利要求4所述的方法,其特征在于,所述步骤S5还包括:识别需要进行敏感信息保护处理的SQL查询语句的执行结果是否属于除查询以外其他SQL功能语句的数据来源;当SQL查询语句的执行结果不属于除查询以外其他SQL功能语句的数据来源时,进...

【专利技术属性】
技术研发人员:徐晓剑邓琼陈建锋刘文涛
申请(专利权)人:中信银行股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1