[发明专利]用于为关系数据库处理数据库语句的方法和系统有效

专利信息
申请号: 201611042300.1 申请日: 2016-11-23
公开(公告)号: CN107066469B 公开(公告)日: 2021-03-16
发明(设计)人: P.M.巴尔巴斯;J.达菲;L.潘;D.M.蒂尔森 申请(专利权)人: 国际商业机器公司
主分类号: G06F16/2453 分类号: G06F16/2453;G06F16/28
代理公司: 北京市柳沈律师事务所 11105 代理人: 于小宁;张晓明
地址: 美国纽*** 国省代码: 暂无信息
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 用于 关系 数据库 处理 语句 方法 系统
【说明书】:

一种用于为关系数据库处理数据库语句的计算机实现的方法。所述数据库包含一个或多个包括一个或多个数据行的表。接收数据库语句。从所述数据库语句中确定谓词集合并从所述表中确定数据行集合以用于生成所述数据库语句结果。获得适用于一个或多个数据行的禁止语句集合。对于每个谓词:获得适用于一个或多个数据行的掩码集合,其中,对于每个掩码,由掩码掩蔽的数据被所述谓词使用。确定数据行是否具有适用的禁止语句,以及是否包含由掩码掩蔽的数据。如果是,则确定所述数据库语句的结果而无需使用将所述谓词应用于所述数据行的结果。

技术领域

发明涉及为关系数据库处理数据库语句。

背景技术

数据库系统通常使用精细粒度访问控制(FGAC)机制来控制用户对数据的访问。例如,FGAC可以用于限制用户对关系表中的特定行集合的访问。该级别的访问控制对于关系数据访问的所有区域(诸如实用程序)是有利的,而对于诸如SELECT、INSERT、UPDATE和DELETE等数据操纵语言(data manipulation language,DML)SQL语句尤其有利。

在关系数据库系统内实现FGAC的传统方法依赖于视图的使用。例如,诸如Oracle虚拟私有数据库等“虚拟私有数据库”允许在行和/或列级别限定访问。FGAC的其他已知实施方式使用用户会话的上下文属性,通过将谓词添加到查询中来修改SQL查询。

然而,已知的现有技术解决方案并没有解决由于推断而可能出现的安全问题,即,用户可以使用允许其访问的其他信息,推断存储在数据库中的不允许其访问的数据信息的情况。

举个例子来说,假设一个数据库表包含客户信用卡信息,其客户(CUSTOMERS)表具有栏目:姓名(name)、卡号(card_number)、失效日期(exp_date)、起始日期(start_date),并包含以下行:

作为FGAC机制的一部分,可以定义卡号列的掩码,使得特定用户不能看到该列的整个值。例如,可以将一列掩码定义为XXXX-XXXX-XXXX-####的形式,以使查询为例如:

SELECT name,card_number

FROM CUSTOMERS

WHERE name=‘Smith,John’

将为应用了掩码的用户返回以下结果:

姓名卡号
Smith,JohnXXXX-XXXX-XXXX-3456

然而,利用该FGAC机制,用户仍然可能通过适当方式利用精心设计的查询来确定该掩蔽的值。例如,对于同一用户的查询为:

SELECT name

FROM CUSTOMERS

WHERE card_number like‘1234-5678-9012-%’

(%为数据库语言中诸如SQL等通配符)将为用户返回以下结果:

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611042300.1/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top