一种数据安全访问方法及系统技术方案

技术编号:10500064 阅读:127 留言:0更新日期:2014-10-04 16:34
本发明专利技术提供一种数据安全访问方法及系统,所述方法包括:预先配置数据安全访问规则,包括但不限于表的安全规则、数据匹配规则、字段安全规则和用户属性规则;探针获取用户的数据访问请求;根据所述数据访问请求对应的用户属性和SQL语句,分析所需访问的所述表和字段,结合所述用户属性规则和数据匹配规则,调整所述SQL语句;根据所述调整后的SQL语句对数据发起访问,根据所述表的安全规则和字段安全规则对访问结果过滤后,返回给所述用户。与现有技术相比,本发明专利技术根据当时使用者产生不同的数据结果,从而提高应用程序访问数据的透明度,并提高数据访问的安全度。

【技术实现步骤摘要】
一种数据安全访问方法及系统
本专利技术涉及数据安全
,尤其涉及一种数据安全访问方法及系统。
技术介绍
数据安全是指对数据的授权访问做区别对待,让最终用户只能看到被授权允许访问的数据。从安全保障的策略上可以分为数据库级的安全控制和应用系统的安全控制。数据库级的安全控制能力由数据库产品自身提供,一般数据库产品通过授权,建立数据库角色和数据的访问权限。应用系统安全控制,是将数据安全作为应用的系统的功能,逐一进行开发控制。 在实现本专利技术的过程中,专利技术人发现现有的导航方案存在如下缺点: 在现有的数据安全控制,基于数据库自身提供的安全控制,只能通过数据库角色进行授权,数据库角色都比较简单无法满足实际应用中的复杂安全控制规则。 应用安全控制,属于功能开发实现,可以实现复杂的安全控制,但存在以下问题:当安全规则发生变化时,需要修改大量的应用程序代码。在基于即席查询的应用场景中,安全控制变得非常困难。当只需要控制数据中某些属性的安全级别时,应用程序的功能很难被预定制。 现有技术中,尚没有一种应用程序透明度高、数据访问安全度高的方案。
技术实现思路
本专利技术的目的在于克服现有技术的缺点和不足,提供一种数据安全访问方法及系统。 一种数据安全访问方法,所述方法包括: 预先配置数据安全访问规则,包括但不限于表的安全规则、数据匹配规则、字段安全规则和用户属性规则; 探针获取用户的数据访问请求; 根据所述数据访问请求对应的用户属性和SQL语句,分析所需访问的所述表和字段,结合所述用户属性规则和数据匹配规则,调整所述SQL语句; 根据所述调整后的SQL语句对数据发起访问,根据所述表的安全规则和字段安全规则对访问结果过滤后,返回给所述用户。 所述数据安全访问规则,还包括: 表的安全级别,字段的安全级别,用户对表、字段的访问限制级别,表数据与用户属性的匹配规则。 所述探针通过动态注入到数据访问组件,当有用户的数据访问请求时,探针监测访问请求的SQL语句并记录。 所述根据所述数据访问请求对应的用户属性和SQL语句,分析所需访问的所述表和字段,结合所述用户属性规则和数据匹配规则,调整所述SQL语句,包括: 将所述探针传入的SQL语句进行解析,构建SQL分词; 根据所述SQL分词得到所需访问的所述表及表的相关字段; 从所述表的安全规则加载表的安全控制信息和所述字段安全规则,同时加载所述用户属性信息; 根据所述用户属性规则以及所述用户与所述表的数据匹配规则确定是否需要对数据访问进行过滤; 根据过滤结果,构建新的SQL语句。 所述方法还包括: 确定数据访问涉及的表是否需要安全审批,若是,进行安全审批请求,并在请求通过后进行数据访问;否则,直接进行数据访问。 所述根据所述表的安全规则和字段安全规则对访问结果过滤,包括: 判断所述数据访问针对的表和字段是否涉及到敏感字段,若是,将相应的字段置空;否则,直接返回数据访问结果。 一种数据安全访问系统,所述系统包括数据安全设置单元、探针单元、语句调整单元和过滤单元,其中, 所述安全设置单元,用于预先配置数据安全访问规则,包括但不限于表的安全规贝U、数据匹配规则、字段安全规则和用户属性规则; 所述探针单元,用于获取用户的数据访问请求; 所述语句调整单元,用于根据所述数据访问请求对应的用户属性和SQL语句,分析所需访问的所述表和字段,结合所述用户属性规则和数据匹配规则,调整所述SQL语句; 所述过滤单元,用于根据所述调整后的SQL语句对数据发起访问,根据所述表的安全规则和字段安全规则对访问结果过滤后,返回给所述用户。 所述系统还包括审计控制单元,用于根据所述表的安全级别对所述用户访问权限进行审批管理。 所述审计控制单元,还用于记录数据访问日志,并通过所述日志进行数据安全访问的审计分析。 所述语句调整单元具体包括分词子单元、表字段获取子单元、加载子单元、过滤子单元和构建子单元,其中, 所述分词子单元,用于将所述探针传入的SQL语句进行解析,构建SQL分词; 所述表字段获取子单元,用于根据所述SQL分词得到所需访问的所述表及表的相关字段; 所述加载子单元,用于从所述表的安全规则加载表的安全控制信息和所述字段安全规则,同时加载所述用户属性信息; 所述过滤子单元,用于根据所述用户属性规则以及所述用户与所述表的数据匹配规则确定是否需要对数据访问进行过滤; 所述构建子单元,用于根据过滤结果,构建新的SQL语句。 本专利技术实施例通过预先配置数据安全访问规则,然后根据探针获取的数据访问请求,分析对应的用户属性、SQL语句、所需访问的表和字段,结合设定的安全规则、匹配规则等调整SQL语句,根据调整后的SQL语句访问数据内容,并在对访问结果进行过滤后返回给相应的用户。进一步的,还可以对用户属性相对应的权限进行控制和审批,用以分层次级别的控制数据的安全访问。与现有技术相比,本专利技术利用SQL解析控制数据安全透明访问,并利用SQL解析技术识别SQL语句中敏感表和字段,将数据安全的控制规则从应用中进行分离出独立控制系统,应用程序以正常的方式进行功能开发,当运行时,应用程序产生的访问同一 SQL语句,能够根据当时使用者产生不同的数据结果,从而提高应用程序访问数据的透明度,并提高数据访问的安全度。 【附图说明】 图1为本专利技术实施例1提供的数据安全访问方法原理流程图; 图2为本专利技术实施例2提供的数据安全访问系统结构示意图; 图3为本专利技术实施例3提供的语句调整单元结构示意图。 【具体实施方式】 下面结合附图对本专利技术的【具体实施方式】进行详细描述。但本专利技术的实施方式不限于此。 本专利技术实施例中,同样的SQL(Structured Query Language,结构化查询语言)语句,能够根据不同的使用者返回不同的数据结果。例如,在现有的系统上,不用修改现在运行应用程序,就可以实现对敏感字段进行加密输出。 本专利技术实施例所实现的核心功能点包括:能够识别查询的SQL涉及到的表的安全级别,如果安全级别高的在申请审批通过后方可返回数据给应用。能够识别查询的SQL涉及所有字段的安全级别,如是否安全包含手机号码,帐号等安全级别高的字段,根据规则控制,对敏感字段可以输出,加密输出或不输出或需要申请审批后再输出。对一个查询SQL,根据用户不同属性和规则控制要求,能够自动加入条件进行数据过滤。如对销售记录的查询SQL,如果是总部用户可以查询所有记录,如果是某个分支机构的用户,自动过滤出这个分支机构的数据。 如图1所示,为本专利技术实施例1提供的数据安全访问方法原理流程图,具体如下: 步骤10,预先配置数据安全访问规则。 这里,系统运行时必须先对安全规则进行初始化配置。配置数据安全访问规则,包括设置表的安全级别、字段的安全级别、设置用户对表、字段的访问限制级别、表数据跟用户属性的匹配规则等。也就是至少要包括表的安全规则、数据匹配规则、字段安全规则和用户属性规则,具体来说,需要配置如下规则信息: 表的安全规则配置关键要素说明如下: 表的名称:要进行安全控制的表名,支持正则表达式,如可以支持表名包含关键词,或以什么开头,结束的表名。 访本文档来自技高网...

【技术保护点】
一种数据安全访问方法,其特征在于,所述方法包括:预先配置数据安全访问规则,包括但不限于表的安全规则、数据匹配规则、字段安全规则和用户属性规则;探针获取用户的数据访问请求;根据所述数据访问请求对应的用户属性和SQL语句,分析所需访问的所述表和字段,结合所述用户属性规则和数据匹配规则,调整所述SQL语句;根据所述调整后的SQL语句对数据发起访问,根据所述表的安全规则和字段安全规则对访问结果过滤后,返回给所述用户。

【技术特征摘要】
1.一种数据安全访问方法,其特征在于,所述方法包括: 预先配置数据安全访问规则,包括但不限于表的安全规则、数据匹配规则、字段安全规则和用户属性规则; 探针获取用户的数据访问请求; 根据所述数据访问请求对应的用户属性和SQL语句,分析所需访问的所述表和字段,结合所述用户属性规则和数据匹配规则,调整所述SQL语句; 根据所述调整后的SQL语句对数据发起访问,根据所述表的安全规则和字段安全规则对访问结果过滤后,返回给所述用户。2.如权利要求1所述的方法,其特征在于,所述数据安全访问规则,还包括: 表的安全级别,字段的安全级别,用户对表、字段的访问限制级别,表数据与用户属性的匹配规则。3.如权利要求1所述的方法,其特征在于,所述探针通过动态注入到数据访问组件,当有用户的数据访问请求时,探针监测访问请求的SQL语句并记录。4.如权利要求1所述的方法,其特征在于,所述根据所述数据访问请求对应的用户属性和SQL语句,分析所需访问的所述表和字段,结合所述用户属性规则和数据匹配规则,调整所述SQL语句,包括: 将所述探针传入的SQL语 句进行解析,构建SQL分词; 根据所述SQL分词得到所需访问的所述表及表的相关字段; 从所述表的安全规则加载表的安全控制信息和所述字段安全规则,同时加载所述用户属性信息; 根据所述用户属性规则以及所述用户与所述表的数据匹配规则确定是否需要对数据访问进行过滤; 根据过滤结果,构建新的SQL语句。5.如权利要求4所述的方法,其特征在于,所述方法还包括: 确定数据访问涉及的表是否需要安全审批,若是,进行安全审批请求,并在请求通过后进行数据访问;否则,直接进行数据访问。6.如权利要求1所述的方法,其特征在于,所述根据所述表的安全规则和字段安全规则对访问结果过滤...

【专利技术属性】
技术研发人员:赵静雷鸣
申请(专利权)人:中国移动通信集团湖北有限公司
类型:发明
国别省市:湖北;42

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

1