基于身份和规则的数据库访问控制方法与流程

文档序号:14071016阅读:1274来源:国知局
本发明属于数据库安全防护
技术领域
:,特别是一种基于身份和规则的数据库访问控制方法。
背景技术
::随着信息技术的发展,数据库在各行各业得到了更加广泛的应用。数据库在承载信息系统核心数据的同时,也日益成为数据窃取者的重点攻击目标。为了提高数据库的安全防护能力,可在现行数据库已有的安全机制基础上通过增加身份认证和细粒度的访问控制规则来阻止数据库非法访问请求保护数据。基于身份和规则的数据库访问控制技术通过对数据库访问请求者身份信息进行预先设置来阻止非法用户请求,同时结合行列级的数据访问权限控制规则来实现细粒度的访问请求控制。通过综合访问请求身份信息验证、数据访问权限验证等识别非法请求从而增强数据库防护能力,维护信息系统安全。目前开展数据库访问控制研究主要有两条思路:一是采用中间件的方式,在用户和数据库之间加入访问控制中间件,通过加解密数据、表级访问权限控制等实现数据库访问控制;二是直接在数据库上进行数据加解密控制,可分为对整个数据库、数据库中的表以及表中的数据等进行加解密,保证数据安全。但目前的研究还存在以下不足:对数据库访问请求仅采用简单的用户合法性验证;数据库加解密过程往往比较耗费计算资源,而且加密后的数据列往往无法正常索引,影响数据库检索结果;需要进行sql语句解析,而目前sql语句解析无法做到完全正确导致数据库访问控制失败;未能实现行列级数据的访问控制。技术实现要素:本发明公开了一种基于身份和规则的数据库访问控制方法,用于解决上述现有技术的问题。本发明的一种基于身份和规则的数据库访问控制方法,其中,包括:步骤1:配置数据库合法访问者;步骤2:创建数据库访问控制规则;步骤3:截获数据库访问请求并对访问请求发起者身份信息进行验证,根据身份验证结果确定是否允许继续访问;如果身份验证通过,则放行该访问请求,否则终止该访问请求;步骤4:如果数据库访问身份请求获得通过,则验证访问身份的访问控制规则,如通过验证,则执行数据请求。根据本发明的基于身份和规则的数据库访问控制方法,其中,数据库访问控制规则主要由访问控制视图来完成对数据库表的行列级数据进行增、删、改和查访问权限控制.根据本发明的基于身份和规则的数据库访问控制方法,其中,如果数据库访问身份请求获得通过,则验证访问身份的访问控制规则,如通过验证,则执行数据请求,否则屏蔽被保护的数据根据本发明的基于身份和规则的数据库访问控制方法,其中,步骤1还包括:将用户与身份认证特征标识和角色进行绑定。根据本发明的基于身份和规则的数据库访问控制方法,其中,步骤2包括:创建角色,以及角色对应的操作权限。根据本发明的基于身份和规则的数据库访问控制方法,其中,步骤2还包括:创建数据库访问控制表,该数据库访问控制表的表项包括:角色、操作权限、可访问的被保护行以及可访问的被保护列。本发明通过对数据库访问请求者身份信息进行预先设置来阻止非法访问用户,同时结合行列级数据的访问权限控制规则来实现细粒度的访问请求控制。通过综合访问请求身份信息验证、行列级的数据访问权限验证等识别非法请求从而增强数据库防护能力,维护信息系统安全。附图说明图1所示为本发明基于身份和规则的数据库访问控制方法的流程图;图2所示为配置数据库访问请求用户并赋予角色的示意图;图3所示为数据库访问控制规则创建过程的示意图;图4所示为数据库访问请求身份验证流程图。具体实施方式为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。图1所示为本发明基于身份和规则的数据库访问控制方法的流程图,如图1所示,本发明基于身份和规则的数据库访问控制方法包括:步骤1:配置数据库合法访问者;步骤2:创建数据库访问控制规则;步骤3:截获数据库访问请求并对访问请求发起者身份信息进行验证,根据身份验证结果确定是否允许继续访问。如果身份验证通过,则放行该访问请求,否则终止该访问请求。通过对数据库访问请求者身份进行验证可以有效阻止非法用户访问数据库;步骤4:如果数据库访问身份请求获得通过,则还需要验证步骤2创建的访问控制规则。数据库访问控制规则主要由访问控制视图来完成对数据库表的行列级数据进行增、删、改、查等访问权限控制;步骤5:根据步骤4进行的规则验证结果确定是否允许执行访问请求。如果仍然通过访问请求规则验证,则执行数据请求,否则屏蔽被保护的数据。图2所示为配置数据库访问请求用户并赋予角色的示意图,如图1以及图2所示,本发明基于身份和规则的数据库访问控制方法包括:步骤1:配置数据库合法访问者。数据库访问请求用户可以是应用系统用户或由应用端主机地址、者应用服务器地址表示。这里以user代替合法的数据库访问者。为了进行后续身份验证,这里需要将用户与身份认证特征标识绑定起来。同时为了后续授权的方便,也需要根据需求创建不同的角色,并将用户赋予给角色。如图2所示,其中,label1、label2、label3以及label4是身份认证特征标识,可以是身份认证卡也可以身份认证指纹等;user1、user2、user3以及user4代表不同的合法访问请求用户;role1、role2分别表示不同的角色,主要用于权限划分。步骤2:创建数据库访问控制规则。图3所示为数据库访问控制规则创建过程的示意图,如图3所示,这里的数据库访问控制规则可以实现行列级数据的权限控制。本规则基于数据库访问控制视图创建而成。需要指出的是,本规则创建过程需要对数据库中的表进行简单改造。如图3所示,其中,“table1”是原数据表,也是需要被保护的数据表;“视图table1”是访问控制视图,名称与被保护的表table1相同;“xxx”代表的是原表table1被随机修改后的表名,该表中的数据不改动;“访问控制规则”建立在“视图table1”之上,主要通过视图中的触发器完成用户权限控制。该触发器同时需要完成对访问请求截获。结合步骤1所创建的用户,访问控制规则可以表1表1所示为数据库访问控制规则表1:表1角色视图操作权限列控制行控制role1视图table1selectattr1,attr2attr3:keya,attr4:keyb其中,“role1”是步骤1创建的角色;“视图table1”是指数据库访问控制视图;“select”表示角色role1能够对被保护数据有查询操作权限;“attr1,attr2”是针对表table1需要进行整列保护的列属性名,以“,”相隔;“attr3:keya,attr4:keyb”是针对表table1需要进行字段数据保护的配置数据。其中,att3表示表table1中的列属性名,keya表示需要被保护字段数据的行关键字,attr3:keya两者结合起来可确定需要被保护的字段数据。同理,attr4:keyb可确定另一个需要被保护的字段数据。不同字段数据同样以“,”相隔。该规则为白名单规则,即只有角色role1有权限访问视图table1中被保护起来的列“attr1,attr2”和行“attr3:keya,attr4:keyb”数据。步骤3:图4所示为数据库访问请求身份验证流程图,如图4所示,截获数据库访问请求并对访问请求发起者身份信息进行验证,根据身份验证结果确定是否允许继续访问。如果身份验证通过,则放行该访问请求,否则终止该访问请求。当访问请求sql语句涉及到表table1时,就会触发访问控制视图上的触发器。该触发器会从访问请求连接的session中获取本次访问请求的用户信息并进行转发完成用户合法性验证。如果身份验证获得通过,则放行该访问请求,否则终止该访问请求。可以用0表示验证不通过,即访问请求用户不合法;1表示验证通过,即访问请求用户合法。当访问请求用户不合法时,终止该访问请求;否则,放行该访问请求。步骤4:如果数据库访问身份请求获得通过,则还需要验证步骤2创建的访问控制规则。数据库访问控制规则主要由访问控制视图来完成对数据库表的行列级数据进行增、删、改、查等访问权限控制。本步骤验证的主要依据是步骤2创建的数据库访问控制规则,如表1所示。角色role1所对应的用户user1、user2以及user3对视图table1中被保护起来的列“attr1,attr2”和行“attr3:keya,attr4:keyb”仅有查询的操作权限;而其他角色,如role2,对应的用户user4访问视图table1时,屏蔽对该用户访问列“attr1,attr2”和行“attr3:keya,attr4:keyb”所对应的数据。步骤5:根据步骤4进行的规则验证结果确定是否允许执行访问请求。如果仍然通过访问请求规则验证,则执行数据请求,否则屏蔽被保护的数据。针对本次role1发起的针对表table1的访问请求,如果是select操作,则返回正确的请求结果;否则,屏蔽列“attr1,attr2”和行“attr3:keya,attr4:keyb”对应的数据。同时,可以根据需要记录数据库访问请求过程中的日志信息,以便后续安全分析。针对非法请求给予及时告警。本数据库访问控制方法基于访问请求者身份及访问权限控制规则,在增强用户身份认证的同时,实现了对数据库中的数据进行行列级细粒度的权限控制能力。该方法可在现有数据库保护机制的基础上有效增强数据库数据的防护能力,且具有普遍推广价值,对于维护信息系统,特别是保护部门核心数据库数据具有重要意义。本发明通过对数据库访问请求者身份信息进行预先设置来阻止非法访问用户,同时结合行列级数据的访问权限控制规则来实现细粒度的访问请求控制。通过综合访问请求身份信息验证、行列级的数据访问权限验证等识别非法请求从而增强数据库防护能力,维护信息系统安全。以上所述仅是本发明的优选实施方式,应当指出,对于本
技术领域
:的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1