CN102314449B - 后置数据访问过滤器和过滤方法 - Google Patents
后置数据访问过滤器和过滤方法 Download PDFInfo
- Publication number
- CN102314449B CN102314449B CN 201010218734 CN201010218734A CN102314449B CN 102314449 B CN102314449 B CN 102314449B CN 201010218734 CN201010218734 CN 201010218734 CN 201010218734 A CN201010218734 A CN 201010218734A CN 102314449 B CN102314449 B CN 102314449B
- Authority
- CN
- China
- Prior art keywords
- user
- data
- privacy
- access
- query
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提出了一种后置数据访问过滤器,包括:查询指令截获单元,用于截获对数据库的查询指令;查询指令分析单元,用于对所截获的查询指令进行分析,得到此次查询的访问意图;数据区域圈定单元,用于根据数据库基于查询指令而返回的原始查询结果,生成数据区域矩阵和用户标识集合;隐私规则合成单元,用于根据用户标识集合和访问意图,查询与此次查询有关的用户隐私策略,以及根据用户标识集合、与此次查询有关的用户隐私策略和数据区域矩阵,生成数据过滤地图;以及返回数据过滤单元,用于利用数据过滤地图,对所述原始查询结果进行过滤,生成最终查询结果。本发明还提出了一种后置数据访问过滤方法。
Description
技术领域
本发明涉及信息检索领域中的数据保护,更具体地,涉及一种后置数据访问过滤器(POst-processing Data Access Filter,PODAF)和过滤方法,在存在大量用户定义的用户隐私策略的情景下,高效地实现用户隐私数据保护。
背景技术
一般来讲,应用程序通过对数据存储库的操作实现数据的存储和检索,例如:通过一系列的连接、或来自应用程序的逻辑访问流,在关系数据库中建立用户空间。应用程序中的隐私数据保护,一般通过在应用程序或与其关联的数据库中设置相应的规则来完成,或是在两端同时设置规则协作完成,这是以用户角色为基础的集权数据保护模式。
但是,随着个人信息系统和服务的日益普及,越来越多的用户私人数据发布、共享到应用程序中,由于不同用户对自己私有数据访问权限的设置意图区别很大,所以很难用传统的集权数据保护模式完善、公正地保护用户隐私数据。信息系统间的数据共享和集成是必然的发展趋势,这在更大程度上加大了用集权数据保护模式保护隐私数据的难度。例如,典型的应用场景可以包括医疗信息系统、联合金融分析系统、以及各种联合协同过滤系统等。比如,在医疗信息系统中,针对病人的电子病历信息管理,需要用户根据不同的访问意图定义自己数据的访问保护策略,如,有些用户认为自己患有胃病是完全可以公开的,而有些用户则认为这是不能公开的隐私信息。
集权数据保护模式可以看作是自顶向下的安全验证机制,而基于用户隐私策略的数据保护则是自底向上的安全验证机制。对于自底向上的数据安全保护机制,因为有太多的用户隐私策略需要被考虑,因此,在应用程序中通过程序和数据库中的存储过程等很难实现,即使能够实现,效率也非常低下。对于数据访问保护需要考虑大量用户隐私策略的场景,在应用程序与数据库之间添加一个过滤组件,用以专门根据用户隐私策略调整访问指令或数据流,是非常有效的,称为数据访问过滤器(DataAccess Filter,DAF)。
数据访问过滤器可以有两种形式:前置数据访问过滤器PRDAF(PRe-processing Data Access Filter)和后置数据访问过滤器PODAF(POst-processing Data Access Filter)。前置数据访问过滤器根据用户隐私策略,修改来自应用程序的查询指令,从而达到保护数据隐私的目的;后置数据访问过滤器根据用户隐私策略修改由数据库返回的数据内容,从而达到保护数据隐私的目的。这两种数据访问过滤器适用于不同的场景,适用准则可以分析如下:
(1)对于存在大量用户隐私策略的情况,应该采用数据访问过滤器;
(2)如果与来访的数据指令所要操作的数据区域有关的用户隐私策略较少或较为统一,则应该采用前置数据访问过滤器PRDAF,由数据库协助完成访问数据的筛选。
(3)如果与来访的数据指令所要操作的数据区域有关的用户隐私策略较多,且所存储的内容不异质性强,则应该采用后置数据访问过滤器PODAF,由后置访问过滤器PODAF完成访问数据的筛选。
已有相关专利/专利申请(参考文献[1]~[5])提出了前置数据访问过滤器的原理和实现方案。但是,如上所述,对于与来访的数据指令所要操作的数据区域有关的用户隐私策略较多的场景,后置数据访问过滤器PODAF的性能将大大优于前置数据访问过滤器PRDAF。
参考文献:
[1]美国专利US 7,437,362 B1;
[2]美国专利US 7,546,629 B2;
[3]美国专利US 7,596,809 B2;
[4]美国专利申请公开US 2006/0085838A1;
[5]美国专利申请公开US2006/0212470A1。
发明内容
为了在存在大量用户定义的用户隐私策略的情景下,高效地实现用户隐私数据保护,本发明提出了一种后置数据访问过滤器(POst-processing Data Access Filter,PODAF)和过滤方法。
根据本发明的第一方案,提出了一种后置数据访问过滤器,包括:查询指令截获单元,用于截获对数据库的查询指令;查询指令分析单元,用于对所截获的查询指令进行分析,得到此次查询的访问意图;数据区域圈定单元,用于根据数据库基于查询指令而返回的原始查询结果,生成数据区域矩阵和用户标识集合;隐私规则合成单元,用于根据用户标识集合和访问意图,查询与此次查询有关的用户隐私策略,以及根据用户标识集合、与此次查询有关的用户隐私策略和数据区域矩阵,生成数据过滤地图;以及返回数据过滤单元,用于利用数据过滤地图,对所述原始查询结果进行过滤,生成最终查询结果。
根据本发明的第二方案,提出了一种后置数据访问过滤器,包括:查询指令接收单元,用于接收对数据库的查询指令;查询指令分析单元,用于对所接收到的查询指令进行分析,生成初始查询指令,并向数据库顺序发送初始查询指令和接收到的查询指令,而且还对所接收到的查询指令进行分析,得到此次查询的访问意图;数据区域圈定单元,用于根据数据库基于初始查询指令而返回的初始查询结果,生成数据区域矩阵和用户标识集合;隐私规则合成单元,用于根据用户标识集合和访问意图,查询与此次查询有关的用户隐私策略,以及根据用户标识集合、与此次查询有关的用户隐私策略和数据区域矩阵,生成数据过滤地图;以及返回数据过滤单元,用于利用数据过滤地图,对数据库基于查询指令而返回的原始查询结果进行过滤,生成最终查询结果。
优选地,所述后置数据访问过滤器还可以包括:用户隐私策略库,用于存储用户根据访问意图而设定的用户隐私策略。
优选地,用户隐私策略由至少一条用户隐私规则组成,用户隐私规则至少包括用户标识、访问意图、数据域、和权限,用于描述该用户标识所标识的用户针对该访问意图是允许还是不允许访问该数据域。
优选地,所述数据区域矩阵是空白的数据过滤地图;以及所述隐私规则合成单元根据与此次查询有关的用户隐私策略,填充所述数据区域矩阵,生成所述数据过滤地图。
优选地,所述返回数据过滤单元从原始查询结果中删去和/或屏蔽用户不允许访问的数据项。
根据本发明的第三方案,提出了一种后置数据访问过滤方法,包括以下步骤:截获对数据库的查询指令;对所截获的查询指令进行分析,得到此次查询的访问意图;根据数据库基于查询指令而返回的原始查询结果,生成数据区域矩阵和用户标识集合;根据用户标识集合和访问意图,查询与此次查询有关的用户隐私策略;根据用户标识集合、与此次查询有关的用户隐私策略和数据区域矩阵,生成数据过滤地图;以及利用数据过滤地图,对所述原始查询结果进行过滤,生成最终查询结果。
根据本发明的第四方案,提出了一种后置数据访问过滤器,包括:接收对数据库的查询指令;对所接收到的查询指令进行分析,生成初始查询指令,并向数据库顺序发送初始查询指令和接收到的查询指令;对所接收到的查询指令进行分析,得到此次查询的访问意图;根据数据库基于初始查询指令而返回的初始查询结果,生成数据区域矩阵和用户标识集合;根据用户标识集合和访问意图,查询与此次查询有关的用户隐私策略;根据用户标识集合、与此次查询有关的用户隐私策略和数据区域矩阵,生成数据过滤地图;以及利用数据过滤地图,对数据库基于查询指令而返回的原始查询结果进行过滤,生成最终查询结果。
优选地,所述后置数据访问过滤方法还可以包括以下步骤:以用户隐私策略库的形式,存储用户根据访问意图而设定的用户隐私策略。
优选地,用户隐私策略由至少一条用户隐私规则组成,用户隐私规则至少包括用户标识、访问意图、数据域、和权限,用于描述该用户标识所标识的用户针对该访问意图是允许还是不允许访问该数据域。
优选地,所述数据区域矩阵是空白的数据过滤地图;以及所述数据过滤地图是通过根据与此次查询有关的用户隐私策略、填充所述数据区域矩阵而生成的。
优选地,从原始查询结果中删去和/或屏蔽用户不允许访问的数据项。
本发明可以实现以下有益技术效果:对于数据访问保护需要考虑大量用户隐私策略的场景,PODAF可在存在大量用户定义的用户隐私策略的情景下,高效地实现用户隐私数据保护。
(1)在应用程序与数据库之间添加一个过滤组件,用以专门根据用户隐私策略调整访问数据流,无需修改应用程序和数据库设置。
(2)基于用户设置的数据隐私策略,PODAF对数据库返回的数据流进行处理,可以在保证所有用户数据安全的情况下,高效地合并多用户数据隐私策略共存的复杂情景。
(3)PODAF对数据库返回的数据流进行处理,而不是处理应用程序发送到数据库的查询指令,从而没有使发送到数据库的查询指令复杂化,有利于提高数据库的查询效率。
附图说明
通过下面结合附图说明本发明的优选实施例,将使本发明的上述及其它目的、特征和优点更加清楚,其中:
图1是用于说明根据本发明的PODAF过滤器在查询系统中所处的位置的示意图;
图2示出了根据本发明第一实施例的PODAF过滤器12的示意结构方框图;
图3示出了根据本发明第一实施例的PODAF过滤器12的示意操作流程图(根据本发明的PODAF过滤方法的示意流程图);
图4示出了根据本发明第一实施例的PODAF过滤器/过滤方法的应用实例。
图5示出了根据本发明第二实施例的PODAF过滤器12’的示意结构方框图。
图6示出了根据本发明第二实施例的PODAF过滤器12’的示意操作流程图。
图7示出了根据本发明第二实施例的PODAF过滤器/过滤方法的应用实例一。
图8示出了根据本发明第二实施例的PODAF过滤器/过滤方法的应用实例二。
在本发明的所有附图中,相同或相似的结构和步骤均以相同或相似的附图标记标识。
具体实施方式
下面参照附图对本发明的优选实施例进行详细说明,在描述过程中省略了对于本发明来说是不必要的细节和功能,以防止对本发明的理解造成混淆。
图1是用于说明根据本发明的PODAF过滤器12在查询系统中所处的位置的示意图。
如图1所示,根据本发明的PODAF过滤器12设置在应用程序11和数据库13之间。PODAF过滤器12还与用户隐私策略库14相连。PODAF过滤器12截获应用程序11对数据库13的查询指令,并接收数据库13针对所述查询指令返回的原始查询结果。PODAF过滤器12根据所述查询指令和原始查询结果,从用户隐私策略库14获得此次查询所涉及的用户隐私策略/规则,对数据库13返回的原始查询结果进行过滤,形成最终查询结果。PODAF过滤器12将最终查询结果输出给应用程序11,由此实现了针对原始查询结果的、基于用户隐私策略的过滤,仅将用户允许访问的查询结果输出给应用程序11。
用户隐私策略库14存储有用户根据数据访问意图而设定的用户隐私策略,即根据数据访问意图而设定的针对该用户自己的数据的访问权限(对于不同的数据访问意图设置其部分数据在该情景下允许或不允许访问)。用户隐私策略由一条或多条用户隐私规则组成。用户隐私规则至少包括用户标识、访问意图、数据域、和权限,用于描述该用户标识所标识的用户针对该访问意图是允许还是不允许访问该数据域。虽然在图1中,将用户隐私策略库14图示为与PODAF过滤器12分离的组件,本领域普通技术人员应当可以理解的是,用户隐私策略库14也可以是PODAF过滤器12的一个组件,包括在PODAF过滤器12中。
【第一实施例】
图2示出了根据本发明第一实施例的PODAF过滤器12的示意结构方框图,以及图3示出了根据本发明第一实施例的PODAF过滤器12的示意操作流程图(根据本发明第一实施例的PODAF过滤方法的示意流程图)。
如图2所示,根据本发明第一实施例的PODAF过滤器12包括:查询指令截获单元121、查询指令分析单元122、数据区域圈定单元123、隐私规则合成单元124、和返回数据过滤单元125。
以下,将参考图2和图3,对根据本发明第一实施例的PODAF过滤器12的具体操作流程进行详细描述。
在步骤S321,查询指令截获单元121截获从应用程序11发向数据库13的查询指令(例如,SQL查询指令),并将截获的查询指令发送给查询指令分析单元122。
在步骤S322,查询指令分析单元122对查询指令截获单元121发送过来的查询指令进行分析,得到此次查询的访问意图(如,市场分析、科研、治疗、管理、统计和浏览等),并将访问意图发送给隐私规则合成单元124。
在步骤S323,数据区域圈定单元123根据数据库13基于来自应用程序11的查询指令而返回的原始查询结果,生成数据区域矩阵(即,稍后描述的“空DFM(Data Filtering Map)”(空数据过滤地图))和用户标识集合,并将数据区域矩阵(空DFM)和用户标识集合发送给隐私规则合成单元124。
在步骤S324,隐私规则合成单元124根据数据区域圈定单元123发送过来的用户标识集合和查询指令分析单元122发送过来的访问意图,向用户隐私策略库14查询与此次查询有关的用户隐私策略/规则。隐私规则合成单元124还根据数据区域圈定单元123发送过来的用户标识集合和用户隐私策略库14返回的与此次查询有关的用户隐私策略/规则,填充数据区域圈定单元123发送过来的数据区域矩阵(空DFM),生成DFM,并将所生成的DFM发送给返回数据过滤单元125。
在步骤S325,返回数据过滤单元125利用隐私规则合成单元124所生成的DFM,对数据库13返回的原始查询结果进行过滤,删去和/或屏蔽原始查询结果中用户不允许访问的数据项,生成最终查询结果,发送给应用程序11。
以上描述中,对各个步骤进行了分别描述,但是,并非所有步骤都必须按照以上描述的顺序执行。例如,步骤S322和S323并无特定的顺序和依存关系,可以交换执行顺序或者并行执行。这样交换执行顺序而得到的其他技术方案也应被理解为包含在本发明的范围内。此外,各个步骤也并不必须由以上描述的各个单元来执行,本领域普通技术人员应当清楚,可以由其他单元来执行各个步骤,或者可以由同一单元完成多个步骤,或者可以由多个单元合作完成一个步骤。这些通过替代单元而得到的其他技术方案也应被理解为包含在本发明的范围内。
图4示出了根据本发明第一实施例的PODAF过滤器/过滤方法的应用实例。
在图4中,应用程序11向数据库13发出查询指令『Select*fromContact』。
查询指令截获单元121截获查询指令『Select*from Contact』,并将截获的查询指令『Select*from Contact』发送给查询指令分析单元122。
查询指令分析单元122分析查询指令『Select*from Contact』,得到此次查询的访问意图是『市场分析(Market ing)』,并将访问意图『市场分析』发送给隐私规则合成单元124。
数据库13基于来自应用程序11的查询指令返回原始查询结果(图4中的左侧上表格,下表1),共返回6条查询结果,每条查询结果包括5个数据域(Name、ID、Region、State、Phone)。
表1
NAME | ID | REGION | STATE | PHONE |
Olsen | 1 | NE | MA | 1111 |
Edison | 2 | NE | RI | 2222 |
Tesla | 3 | SE | FL | 3333 |
Ford | 4 | NE | NY | 4444 |
Came | 5 | NE | NY | 5555 |
Gates | 6 | SW | CA | 6666 |
数据区域圈定单元123根据数据库13返回的原始查询结果(表1),生成数据区域矩阵(即,稍后描述的“空DFM”(空数据过滤地图))(图4中的右侧上表格,下表2)和用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates},并将数据区域矩阵(空DFM)和用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}发送给隐私规则合成单元124。
表2
NAME | ID | REGION | STATE | PHONE |
隐私规则合成单元124根据数据区域圈定单元123发送过来的用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}和查询指令分析单元122发送过来的访问意图『市场分析』,向用户隐私策略库14查询与此次查询有关的用户隐私策略/规则。
用户隐私策略库14查询得到针对用户『Olsen』、『Edison』、『Tesla』、『Ford』、『Came』和『Gates』的用户隐私规则如下:
Olsen:If intent==“Marketing”Then (Name,Phone)&
Enforce(Dissent);
Edison:If intent==“Marketing”Then (Region)& Enforee
(Dissent):
Tesla:If intent==“Marketing”Then (State) & Enforce
(Dissent);
Ford:If intent==“Marketing”Then (Name,Phone) &
Enforce(Dissent);
Came:If intent==“Marketing”Then (State) & Enforce
(Dissent);
Gates:If intent==“Marketing”Then (Region) & Enforce
(Dissent)。
隐私规则合成单元124根据数据区域圈定单元123发送过来的用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}和用户隐私策略库14返回的与此次查询有关的上述用户隐私策略/规则,填充数据区域圈定单元123发送过来的数据区域矩阵(空DFM)(表2),生成DFM(图4中的右侧下表格,下表3),并将所生成的DFM(表3)发送给返回数据过滤单元125。
表3
NAME | ID | REGION | STATE | PHONE |
x | x | |||
x | ||||
x | ||||
x | x | |||
x | ||||
x |
在所生成的DFM(表3)中,以“x”表示的数据项表明该数据单元格对于本次查询而言是禁止访问的。
返回数据过滤单元125利用隐私规则合成单元124所生成的DFM(表3),对数据库13返回的原始查询结果(表1)进行过滤,屏蔽原始查询结果(表1)中用户不允许访问的数据项(以『DENY』代替原始查询结果数据项),生成最终查询结果(图4中的左侧下表格,下表4),发送给应用程序11。
表4
NAME | ID | REGION | STATE | PHONE |
DENY | 1 | NE | MA | DENY |
Edison | 2 | DENY | RI | 2222 |
Tesla | 3 | SE | DENY | 3333 |
DENY | 4 | NE | NY | DENY |
Came | 5 | NE | DENY | 5555 |
Gates | 6 | DENY | CA | 6666 |
返回数据过滤单元125也可以采用删除原始查询结果(表1)中用户不允许访问的数据项的方式,生成最终查询结果(下表5)。
表5
NAME | ID | REGION | STATE | PHONE |
1 | NE | MA | ||
Edison | 2 | RI | 2222 | |
Tesla | 3 | SE | 3333 | |
4 | NE | NY | ||
Came | 5 | NE | 5555 | |
Gates | 6 | CA | 6666 |
根据以上描述可以看到,在存在大量用户定义的用户隐私策略的情景下,根据本发明第一实施例的PODAF过滤器/过滤方法能够高效地实现用户隐私数据保护。
【第二实施例】
图5示出了根据本发明第二实施例的PODAF过滤器12’的示意结构方框图,以及图6示出了根据本发明第二实施例的PODAF过滤器12’的示意操作流程图(根据本发明第二实施例的PODAF过滤方法的示意流程图)。在图5中,与本发明第一实施例的PODAF过滤器12中的组件具有相同功能的组件仍沿用图2中的附图标记;以及在图6中,与本发明第一实施例的PODAF过滤器12的操作具有相同功能的操作仍沿用图3中的附图标记。
如图5所示,根据本发明第二实施例的PODAF过滤器12’包括:查询指令接收单元521、查询指令分析单元522、数据区域圈定单元523、隐私规则合成单元124、和返回数据过滤单元125。
以下,将参考图5和图6,对根据本发明第二实施例的POIDAF过滤器12’的具体操作流程进行详细描述。
在步骤S621,查询指令接收单元521接收从应用程序11发送过来的针对数据库13的查询指令(例如,SQL查询指令),并将接收到的查询指令发送给查询指令分析单元522。
在步骤S6221,查询指令分析单元522对查询指令接收单元521发送过来的查询指令进行分析。
如果查询指令分析单元522分析得到了查询指令接收单元521发送过来的查询指令的数据域标识信息(列信息),则将数据域标识信息(列信息)发送给数据区域圈定单元523,并生成用于使数据库13先返回与原始查询结果相关联的用户标识信息(行信息)的初始查询指令,然后,向数据库13顺序发送初始查询指令和查询指令接收单元521发送过来的来自应用程序11的查询指令。
另一方面,如果查询指令分析单元522未分析得到查询指令接收单元521发送过来的查询指令的数据域标识信息(列信息),则生成用于使数据库13先返回与原始查询结果相关联的用户标识信息(行信息)和数据域标识信息(列信息)的初始查询指令,并向数据库13顺序发送初始查询指令和查询指令接收单元521发送过来的来自应用程序11的查询指令。
在步骤S6222,查询指令分析单元522对查询指令接收单元521发送过来的查询指令进行分析,得到此次查询的访问意图(如,市场分析、科研、治疗、管理、统计和浏览等),并将访问意图发送给隐私规则合成单元124。
在步骤S623,数据区域圈定单元523根据数据库13基于来自查询指令分析单元522的初始查询指令而返回的初始查询结果(行信息)和查询指令分析单元522发送过来的数据域标识信息(列信息),或者仅根据数据库13基于来自查询指令分析单元522的初始查询指令而返回的初始查询结果(行信息和列信息),生成数据区域矩阵(即,稍后描述的“空DFM(Data Filtering Map)”(空数据过滤地图))和用户标识集合(行信息),并将数据区域矩阵(空DFM)和用户标识集合发送给隐私规则合成单元124。
在步骤S324,隐私规则合成单元124根据数据区域圈定单元523发送过来的用户标识集合和查询指令分析单元522发送过来的访问意图,向用户隐私策略库14查询与此次查询有关的用户隐私策略/规则。隐私规则合成单元124还根据数据区域圈定单元523发送过来的用户标识集合和用户隐私策略库14返回的与此次查询有关的用户隐私策略/规则,填充数据区域圈定单元523发送过来的数据区域矩阵(空DFM),生成DFM,并将所生成的DFM发送给返回数据过滤单元125。
在步骤S325,返回数据过滤单元125利用隐私规则合成单元124所生成的DFM,对数据库13基于源自应用程序11的查询指令而返回的原始查询结果进行过滤,删去和/或屏蔽原始查询结果中用户不允许访问的数据项,生成最终查询结果,发送给应用程序11。
以上描述中,对各个步骤进行了分别描述,但是,并非所有步骤都必须按照以上描述的顺序执行。例如,步骤S6221和S6222并无特定的顺序和依存关系,可以交换执行顺序或者并行执行。这样交换执行顺序而得到的其他技术方案也应被理解为包含在本发明的范围内。此外,各个步骤也并不必须由以上描述的各个单元来执行,本领域普通技术人员应当清楚,可以由其他单元来执行各个步骤,或者可以由同一单元完成多个步骤,或者可以由多个单元合作完成一个步骤。这些通过替代单元而得到的其他技术方案也应被理解为包含在本发明的范围内。
图7示出了根据本发明第二实施例的PODAF过滤器/过滤方法的应用实例一。
在图7中,应用程序11向PODAF过滤器12’发出针对数据库13的查询指令『Select*from Contact』。
查询指令接收单元521接收查询指令『Select*from Contact』,并将接收到的查询指令『Select*from Contact』发送给查询指令分析单元522。
查询指令分析单元522分析查询指令『Select*from Contact』。根据此查询指令,查询指令分析单元522无法得到数据域标识信息(列信息),因此,生成用于使数据库13先返回与原始查询结果相关联的用户标识信息(行信息)和数据域标识信息(列信息)的初始查询指令(『Select count(1)from Contact』、『Select NAME from Contact』和『Show columns from Contact』),向数据库13顺序发送初始查询指令『Select count(1)from Contact』、『Select NAME from Contact』和『Show co1umns from Contact』和查询指令接收单元521发送过来的来自应用程序11的查询指令『Select*from Contact』。
查询指令分析单元522分析查询指令『Select*from Contact』,得到此次查询的访问意图是『市场分析(Marketing)』,并将访问意图『市场分析』发送给隐私规则合成单元124。
数据库13基于来自查询指令分析单元522的初始查询指令(『Select count(1)from Contact』、『Select NAME from Contact』和『Show columns from Contact』)返回初始查询结果:用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}(行信息)和数据域标识集合{NAME,ID,REGION,STATE,PHONE}(列信息)(图7左侧表格上方的虚线框)。
数据区域圈定单元123根据数据库13返回的初始查询结果:用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}(行信息)和数据域标识集合{NAME,ID,REGION,STATE,PHONE}(列信息),生成数据区域矩阵(即,稍后描述的“空DFM”(空数据过滤地图))(图7中的右侧上表格,下表6),并将数据区域矩阵(空DFM)和用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}发送给隐私规则合成单元124。
表6
NAME | ID | REGION | STATE | PHONE |
隐私规则合成单元124根据数据区域圈定单元123发送过来的用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}和查询指令分析单元122发送过来的访问意图『市场分析』,向用户隐私策略库14查询与此次查询有关的用户隐私策略/规则。
用户隐私策略库14查询得到针对用户『Olsen』、『Edison』、『Tesla』、『Ford』、『Came』和『Gates』的用户隐私规则如下:
Olsen: If intent==“Marketing”Then (Name,Phone) &
Enforce(Dissent);
Edison:If intent==“Marketing”Then (Region) & Enforce
(Dissent);
Tesla: If intent==“Marketing”Then (State) & Enforce
(Dissent);
Ford: If intent==“Marketing”Then (Name,Phone) &
Enforce(Dissent);
Came: If intent==“Marketing”Then (State) & Enforce
(Dissent);
Gates: If intent==“Marketing”Then (Region) & Enforce
(Dissent)。
隐私规则合成单元124根据数据区域圈定单元123发送过来的用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}和用户隐私策略库14返回的与此次查询有关的上述用户隐私策略/规则,填充数据区域圈定单元123发送过来的数据区域矩阵(空DFM)(表6),生成DFM(图7中的右侧中间表格,下表7),并将所生成的DFM(表7)发送给返回数据过滤单元125。
表7
NAME | ID | REGION | STATE | PHONE |
x | x | |||
x | ||||
x | ||||
x | x | |||
x | ||||
x |
在所生成的DFM(表7)中,以“x”表示的数据项表明该数据单元格对于本次查询而言是禁止访问的。
数据库13基于源自应用程序11的查询指令(『Select*fromContact』)返回原始查询结果(图7中的右侧下表格,下表8),共返回6条查询结果,每条查询结果包括5个数据域(Name、ID、Region、State、Phone)。
表8
NAME | ID | REGION | STATE | PHONE |
Olsen | 1 | NE | MA | 1111 |
Edison | 2 | NE | RI | 2222 |
Tesla | 3 | SE | FL | 3333 |
Ford | 4 | NE | NY | 4444 |
Came | 5 | NE | NY | 5555 |
Gates | 6 | SW | CA | 6666 |
返回数据过滤单元125利用隐私规则合成单元124所生成的DFM(表7),对数据库13返回的原始查询结果(表8)进行过滤,屏蔽原始查询结果(表8)中用户不允许访问的数据项(以『DENY』代替原始查询结果数据项),生成最终查询结果(图7中的左侧表格,下表9),发送给应用程序11。
表9
NAME | ID | REGION | STATE | PHONE |
DENY | 1 | NE | MA | DENY |
Edison | 2 | DENY | RI | 2222 |
Tesla | 3 | SE | DENY | 3333 |
DENY | 4 | NE | NY | DENY |
Came | 5 | NE | DENY | 5555 |
Gates | 6 | DENY | CA | 6666 |
返回数据过滤单元125也可以采用删除原始查询结果(表8)中用户不允许访问的数据项的方式,生成最终查询结果(下表10)。
表10
NAME | ID | REGION | STATE | PHONE |
1 | NE | MA | ||
Edison | 2 | RI | 2222 | |
Tesla | 3 | SE | 3333 | |
4 | NE | NY | ||
Came | 5 | NE | 5555 | |
Gates | 6 | CA | 6666 |
图8示出了根据本发明第二实施例的PODAF过滤器/过滤方法的应用实例二。
在图8中,应用程序11向PODAF过滤器12’发出针对数据库13的查询指令『Select NAME,ID,REGION,STATE,PHONE from Contact』。
查询指令接收单元521接收查询指令『Select NAME,ID,REGION,STATE,PHONE from Contact』,并将接收到的查询指令『Select NAME,ID,REGION,STATE,PHONE from Contact』发送给查询指令分析单元522。
查询指令分析单元522分析查询指令『Select NAME,ID,RE6ION,STATE,PHONE from Contact』。根据此查询指令,查询指令分析单元522可以分析得到数据域标识信息集合{NAME,ID,REGION,STATE,PHONE}(列信息),因此,将数据域标识信息集合{NAME,ID,REGION,STATE,PHONE}(列信息)发送给数据区域圈定单元523。此外,查询指令分析单元522生成用于使数据库13先返回与原始查询结果相关联的用户标识信息(行信息)的初始查询指令(『Select count(NAME)from Contact』、『Select NAME from Contact』),然后,向数据库13顺序发送初始查询指令『Select count(NAME)from Contact』、『Select NAME from Contact』和查询指令接收单元521发送过来的来自应用程序11的查询指令『Select NAME,ID,REGION,STATE,PHONE from Contact』。
查询指令分析单元522分析查询指令『Select NAME,ID,REGION,STATE,PHONE from Contact』,得到此次查询的访问意图是『市场分析(Marketing)』,并将访问意图『市场分析』发送给隐私规则合成单元124。
数据库13基于来自查询指令分析单元522的初始查询指令(『Select count(NAME)from Contact』、『Select NAME from Contact』)返回初始查询结果:用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}(行信息)(图8左侧表格上方的虚线框)。
数据区域圈定单元123根据数据库13返回的初始查询结果(用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}(行信息))和查询指令分析单元522发送过来的数据域标识集合{NAME,ID,REGION,STATE,PHONE}(列信息),生成数据区域矩阵(即,稍后描述的“空DFM”(空数据过滤地图))(图8中的右侧上表格,下表11),并将数据区域矩阵(空DFM)和用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}发送给隐私规则合成单元124。
表11
NAME | ID | REGION | STATE | PHONE |
隐私规则合成单元124根据数据区域圈定单元123发送过来的用户标识集合{Olsen,Edison,Tesla,Ford,Came,Gates}和查询指令分析单元122发送过来的访问意图『市场分析』,向用户隐私策略库14查询与此次查询有关的用户隐私策略/规则。
用户隐私策略库14查询得到针对用户『Olsen』、『Edison』、『Tesla』、『Ford』、『Came』和『Gates』的用户隐私规则如下:
Olsen: If intent==“Marketing”Then (Name,Phone) &
Enforce(Dissent);
Edison:If intent==“Marketing”Then (Region) & Enforce
(Dissent);
Tesla: If intent==“Marketing”Then (State) & Enforce
(Dissent);
Ford: If intent==“Marketing”Then (Name,Phone) &
Enforce(Dissent);
Came: If intent==“Marketing”Then (State) & Enforce
(Dissent);
Gates: If intent==“Marketing”Then (Region) & Enforce
(Dissent)。
隐私规则合成单元124根据数据区域圈定单元123发送过来的用户标识集合{Olsern,Edison,Tesla,Ford,Came,Gates}和用户隐私策略库14返回的与此次查询有关的上述用户隐私策略/规则,填充数据区域圈定单元123发送过来的数据区域矩阵(空DFM)(表11),生成DFM(图8中的右侧中间表格,下表12),并将所生成的DFM(表12)发送给返回数据过滤单元125。
表12
NAME | ID | REGION | STATE | PHONE |
x | x | |||
x | ||||
x | ||||
x | x | |||
x | ||||
x |
在所生成的DFM(表12)中,以“x”表示的数据项表明该数据单元格对于本次查询而言是禁止访问的。
数据库13基于源自应用程序11的查询指令(『Select NAME,ID,REGION,STATE,PHONE from Contact』)返回原始查询结果(图8中的右侧下表格,下表13),共返回6条查询结果,每条查询结果包括5个数据域(Name、ID、Region、State、Phone)。
表13
NAME | ID | REGION | STATE | PHONE |
Olsen | 1 | NE | MA | 1111 |
Edison | 2 | NE | RI | 2222 |
Tesla | 3 | SE | FL | 3333 |
Ford | 4 | NE | NY | 4444 |
Came | 5 | NE | NY | 5555 |
Gates | 6 | SW | CA | 6666 |
返回数据过滤单元125利用隐私规则合成单元124所生成的DFM(表7),对数据库13返回的原始查询结果(表13)进行过滤,屏蔽原始查询结果(表13)中用户不允许访问的数据项(以『DENY』代替原始查询结果数据项),生成最终查询结果(图8中的左侧表格,下表14),发送给应用程序11。
表14
NAME | ID | REGION | STATE | PHONE |
DENY | 1 | NE | MA | DENY |
Edison | 2 | DENY | RI | 2222 |
Tesla | 3 | SE | DENY | 3333 |
DENY | 4 | NE | NY | DENY |
Came | 5 | NE | DENY | 5555 |
Gates | 6 | DENY | CA | 6666 |
返回数据过滤单元125也可以采用删除原始查询结果(表13)中用户不允许访问的数据项的方式,生成最终查询结果(下表15)。
表15
NAME | ID | REGION | STATE | PHONE |
1 | NE | MA | ||
Edison | 2 | RI | 2222 | |
Tesla | 3 | SE | 3333 | |
4 | NE | NY | ||
Came | 5 | NE | 5555 | |
Gates | 6 | CA | 6666 |
根据以上描述可以看到,在存在大量用户定义的用户隐私策略的情景下,根据本发明第二实施例的PODAF过滤器/过滤方法能够高效地实现用户隐私数据保护。
这里所公开的本发明实施例的其他设置包括执行在先概述并随后详述的方法实施例的步骤和操作的软件程序。更具体地,计算机程序产品是如下的一种实施例:具有计算机可读介质,计算机可读介质上编码有计算机程序逻辑,当在计算设备上执行时,计算机程序逻辑提供相关的操作,从而提供上述后置数据访问过滤方案。当在计算系统的至少一个处理器上执行时,计算机程序逻辑使得处理器执行本发明实施例所述的操作(方法)。本发明的这种设置典型地提供为设置或编码在例如光介质(例如CD-ROM)、软盘或硬盘等的计算机可读介质上的软件、代码和/或其他数据结构、或者诸如一个或多个ROM或RAM或PROM芯片上的固件或微代码的其他介质、或专用集成电路(ASIC)、或一个或多个模块中的可下载的软件图像、共享数据库等。软件或固件或这种配置可安装在计算设备上,以使得计算设备中的一个或多个处理器执行本发明实施例所述的技术。结合诸如一组数据通信设备或其他实体中的计算设备进行操作的软件过程也可以提供根据本发明的系统。根据本发明的系统也可以分布在多个数据通信设备上的多个软件过程、或者在一组小型专用计算机上运行的所有软件过程、或者单个计算机上运行的所有软件过程之间。
应该理解,严格地讲,本发明的实施例可以实现为数据处理设备上的软件程序、软件和硬件、或者单独的软件和/或单独的电路。
至此已经结合优选实施例对本发明进行了描述。应该理解,本领域技术人员在不脱离本发明的精神和范围的情况下,可以进行各种其它的改变、替换和添加。因此,本发明的范围不局限于上述特定实施例,而应由所附权利要求所限定。
Claims (10)
1.一种后置数据访问过滤器,包括:
查询指令接收单元,用于接收对数据库的查询指令;
查询指令分析单元,用于对所接收到的查询指令进行分析,生成初始查询指令,并向数据库顺序发送初始查询指令和接收到的查询指令,而且还对所接收到的查询指令进行分析,得到此次查询的访问意图;
数据区域圈定单元,用于根据数据库基于初始查询指令而返回的初始查询结果,生成数据区域矩阵和用户标识集合;
隐私规则合成单元,用于根据用户标识集合和访问意图,查询与此次查询有关的用户隐私策略,以及根据用户标识集合、与此次查询有关的用户隐私策略和数据区域矩阵,生成数据过滤地图;以及
返回数据过滤单元,用于利用数据过滤地图,对数据库基于查询指令而返回的原始查询结果进行过滤,生成最终查询结果。
2.根据权利要求1所述的后置数据访问过滤器,还包括:
用户隐私策略库,用于存储用户根据访问意图而设定的用户隐私策略。
3.根据权利要求1所述的后置数据访问过滤器,其中
用户隐私策略由至少一条用户隐私规则组成,用户隐私规则至少包括用户标识、访问意图、数据域、和权限,用于描述该用户标识所标识的用户针对该访问意图是允许还是不允许访问该数据域。
4.根据权利要求1所述的后置数据访问过滤器,其中
所述数据区域矩阵是空白的数据过滤地图;以及
所述隐私规则合成单元根据与此次查询有关的用户隐私策略,填充所述数据区域矩阵,生成所述数据过滤地图。
5.根据权利要求1所述的后置数据访问过滤器,其中
所述返回数据过滤单元从原始查询结果中删去和/或屏蔽用户不允许访问的数据项。
6.一种后置数据访问过滤方法,包括:
接收对数据库的查询指令;
对所接收到的查询指令进行分析,生成初始查询指令,并向数据库顺序发送初始查询指令和接收到的查询指令;
对所接收到的查询指令进行分析,得到此次查询的访问意图;
根据数据库基于初始查询指令而返回的初始查询结果,生成数据区域矩阵和用户标识集合;
根据用户标识集合和访问意图,查询与此次查询有关的用户隐私策略;
根据用户标识集合、与此次查询有关的用户隐私策略和数据区域矩阵,生成数据过滤地图;以及
利用数据过滤地图,对数据库基于查询指令而返回的原始查询结果进行过滤,生成最终查询结果。
7.根据权利要求6所述的后置数据访问过滤方法,还包括以下步骤:
以用户隐私策略库的形式,存储用户根据访问意图而设定的用户隐私策略。
8.根据权利要求6所述的后置数据访问过滤方法,其中
用户隐私策略由至少一条用户隐私规则组成,用户隐私规则至少包括用户标识、访问意图、数据域、和权限,用于描述该用户标识所标识的用户针对该访问意图是允许还是不允许访问该数据域。
9.根据权利要求6所述的后置数据访问过滤方法,其中
所述数据区域矩阵是空白的数据过滤地图;以及
所述数据过滤地图是通过根据与此次查询有关的用户隐私策略、填充所述数据区域矩阵而生成的。
10.根据权利要求6所述的后置数据访问过滤方法,其中
从原始查询结果中删去和/或屏蔽用户不允许访问的数据项。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010218734 CN102314449B (zh) | 2010-07-05 | 2010-07-05 | 后置数据访问过滤器和过滤方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010218734 CN102314449B (zh) | 2010-07-05 | 2010-07-05 | 后置数据访问过滤器和过滤方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102314449A CN102314449A (zh) | 2012-01-11 |
CN102314449B true CN102314449B (zh) | 2013-11-06 |
Family
ID=45427628
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010218734 Expired - Fee Related CN102314449B (zh) | 2010-07-05 | 2010-07-05 | 后置数据访问过滤器和过滤方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102314449B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9374388B2 (en) | 2011-03-03 | 2016-06-21 | Nec Corporation | Policy arbitration method, policy arbitration server, and program |
US9275112B2 (en) * | 2012-11-09 | 2016-03-01 | Microsoft Technology Licensing, Llc | Filtering views with predefined query |
CN109890004B (zh) * | 2013-12-19 | 2022-08-30 | 英特尔公司 | 具有增强的隐私的安全的车辆数据管理 |
CN105447384B (zh) * | 2014-08-18 | 2019-01-29 | 北京壹人壹本信息科技有限公司 | 一种反监控的方法、系统及移动终端 |
CN106407832B (zh) * | 2015-08-03 | 2021-03-09 | 阿里巴巴集团控股有限公司 | 一种用于数据访问控制的方法及设备 |
CN107103245B (zh) * | 2016-02-23 | 2022-08-02 | 中兴通讯股份有限公司 | 文件的权限管理方法及装置 |
CN110832531A (zh) * | 2017-06-29 | 2020-02-21 | 株式会社OPTiM | 图像提供系统、方法以及程序 |
CN107577437B (zh) * | 2017-09-19 | 2021-02-02 | 苏州浪潮智能科技有限公司 | 一种存储信息显示方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1508727A (zh) * | 2002-12-18 | 2004-06-30 | �Ҵ���˾ | 用于过滤数据项条目的方法和系统 |
CN1513142A (zh) * | 2001-06-04 | 2004-07-14 | Nct���Ź�˾ | 用于使用元素解析来修改数据流的系统及方法 |
CN1529863A (zh) * | 2001-07-16 | 2004-09-15 | �ʼҷ����ֵ�������˾ | 个性化网络浏览过滤器 |
-
2010
- 2010-07-05 CN CN 201010218734 patent/CN102314449B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1513142A (zh) * | 2001-06-04 | 2004-07-14 | Nct���Ź�˾ | 用于使用元素解析来修改数据流的系统及方法 |
CN1529863A (zh) * | 2001-07-16 | 2004-09-15 | �ʼҷ����ֵ�������˾ | 个性化网络浏览过滤器 |
CN1508727A (zh) * | 2002-12-18 | 2004-06-30 | �Ҵ���˾ | 用于过滤数据项条目的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102314449A (zh) | 2012-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102314449B (zh) | 后置数据访问过滤器和过滤方法 | |
Abouelmehdi et al. | Big healthcare data: preserving security and privacy | |
US8027993B2 (en) | Techniques for establishing and enforcing row level database security | |
US20210141920A1 (en) | Dynamic view for implementing data access control policies | |
CN105787064A (zh) | 一种基于大数据的挖掘平台构建方法 | |
OLIVEIRA et al. | Toward standardization in privacy-preserving data mining. | |
US8364651B2 (en) | Apparatus, system, and method for identifying redundancy and consolidation opportunities in databases and application systems | |
CN101458705A (zh) | 一种不同应用系统间的数据核对方法、装置及系统 | |
CN101847155A (zh) | 包括访问受保护的xml数据的xml数据库的管理系统 | |
US9940473B2 (en) | Information processing device, information processing method and medium | |
US9235723B2 (en) | Systems and methods for context-sensitive data security for business application performance optimization | |
Gkoulalas-Divanis et al. | PCTA: privacy-constrained clustering-based transaction data anonymization | |
CN102214235A (zh) | 一种基于实时权限控制的企业管理软件搜索引擎集成方法 | |
Colombo et al. | Access control in the era of big data: State of the art and research directions | |
Khan et al. | Development of national health data warehouse Bangladesh: Privacy issues and a practical solution | |
CN110968851A (zh) | 一种业务权限的管控方法、管控系统及计算机可读介质 | |
Pelekis et al. | Private-hermes: A benchmark framework for privacy-preserving mobility data querying and mining methods | |
CN104954465B (zh) | 一种适用于云服务组合场景下隐私策略合成方法 | |
CN102870372B (zh) | 处理计费数据的方法及设备 | |
Xue et al. | GuardSpark++: Fine-grained purpose-aware access control for secure data sharing and analysis in Spark | |
Verma et al. | DF 2.0: Designing an automated, privacy preserving, and efficient digital forensic framework | |
CN102929802A (zh) | 一种存储资源的保护方法及系统 | |
Kumar et al. | Privacy-preservation of vertically partitioned electronic health record using perturbation methods | |
Eicher et al. | An experimental comparison of quality models for health data de-identification | |
CN113553612A (zh) | 一种基于移动群智感知技术的隐私保护方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C53 | Correction of patent for invention or patent application | ||
CB03 | Change of inventor or designer information |
Inventor after: Guo Jianfeng Inventor after: Liu Bo Inventor after: Li Jianqiang Inventor after: Zhao Yu Inventor before: Guo Jianfeng Inventor before: Liu Bo Inventor before: Li Jianqiang Inventor before: Zhao Yu |
|
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20131106 Termination date: 20170705 |