CN112639786A - 智能地标 - Google Patents
智能地标 Download PDFInfo
- Publication number
- CN112639786A CN112639786A CN201880097090.7A CN201880097090A CN112639786A CN 112639786 A CN112639786 A CN 112639786A CN 201880097090 A CN201880097090 A CN 201880097090A CN 112639786 A CN112639786 A CN 112639786A
- Authority
- CN
- China
- Prior art keywords
- data field
- data
- level
- query
- security
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 claims abstract description 80
- 230000004044 response Effects 0.000 claims abstract description 18
- 230000006870 function Effects 0.000 claims description 43
- 238000009795 derivation Methods 0.000 claims description 20
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 9
- 101100134058 Caenorhabditis elegans nth-1 gene Proteins 0.000 description 8
- 238000013479 data entry Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 238000007792 addition Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 210000003813 thumb Anatomy 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6227—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
- G06F16/2246—Trees, e.g. B+trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Bioethics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
提供了数据安全分级的系统和方法。一种可由计算机实施的用于数据安全分级的示例性方法可以包括:接收访问查询数据字段的请求;从安全级别表中搜索所述查询数据字段;响应于从所述安全级别表中搜索到所述查询数据字段,从所述安全级别表中获得与所述查询数据字段相对应的安全级别;以及响应于未从所述安全级别表中搜索到所述查询数据字段,至少基于谱系树和所述安全级别表来确定与所述查询数据字段相对应的安全级别。所述谱系树可以将所述查询数据字段追溯到一个或多个源数据字段,并且所述安全数据级别表可以包括与所述一个或多个源数据字段相对应的一个或多个安全级别。
Description
相关申请
本申请要求于2018年7月16日提交的名为“用于数据安全分级的系统和方法(System and Method for Data Security Grading)”的第16/036,865号美国非临时申请案的权益,该申请的内容通过引用以其全文并入本文。
技术领域
本公开总体上涉及用于数据安全分级的方法和装置。
背景技术
数据安全对于可以不断生成新数据的大多数大规模在线操作至关重要。随着数据量的迅速扩展,向数据字段分配适当的安全级别变得极具挑战。传统的基于规则的方法不足以处理每天产生的不断增长的新数据集。在许多其它挑战中,现有的表或数据字段具有由不同用户创建的名称,并且相对其内容通常不直观。进一步地,数据集的内容可能不时更改,这需要重写已创建的规则。因此,当前的技术无法及时将数据字段分级到适当的安全级别,这使在线数据暴露于显著的风险中。
发明内容
本公开的各个实施例可以包含用于数据安全分级的系统、方法和非暂时性计算机可读介质。根据一方面,一种可由计算机实施的用于数据安全分级的示例性方法可以包括:接收访问查询数据字段的请求;从安全级别表中搜索所述查询数据字段;响应于从所述安全级别表中搜索到所述查询数据字段,从所述安全级别表中获得与所述查询数据字段相相对应的安全级别;以及响应于未从所述安全级别表中搜索到所述查询数据字段,至少基于谱系树和所述安全级别表来确定与所述查询数据字段相对应的安全级别。所述谱系树可将所述查询数据字段追溯到一个或多个源数据字段,并且所述安全数据级别表可以包括与所述一个或多个源数据字段相对应的一个或多个安全级别。
在一些实施例中,所述谱系树可以追溯派生数据字段到一个或多个第一级父级数据字段,每一个第一级父级数据字段是所述源数据字段或第一级派生数据字段,并且所述派生数据字段基于派生函数从所述一个或多个第一级父级数据字段派生;对于所述第一级派生数据字段,所述谱系树可以追溯所述第一级派生数据字段到一个或多个第二级父级数据字段,每一个第二级父级数据字段是所述源数据字段或第二级派生数据字段,并且所述第一级派生数据字段基于另一个派生函数从所述一个或多个第二级父级数据字段派生;所述追溯可以在任何派生数据字段上复制,直到追溯到源数据字段中的一个或多个为止;以及所述谱系树包括所述派生函数。
在一些实施例中,至少基于所述谱系树和所述安全级别表来确定与所述查询数据字段相对应的所述安全级别可以包括:对于任何级别的每一个派生数据字段,至少基于(1)所述派生数据字段的所述派生函数和(2)所述派生数据字段的所述第一级父级数据字段的安全级别,获得所述派生数据字段的安全级别,以及确定所述派生数据字段中的一个与所述查询数据字段相对应,并将所述确定的派生数据字段的安全级别用作所述查询数据字段的安全级别。
在一些实施例中,所获得的派生数据字段的安全级别是所述派生数据字段的所述第一级父级数据字段的所述安全级别中的最高安全级别。
根据另一方面,一种可由计算机实施的用于数据安全分级的方法可以包括:根据一个或多个规则将数据空间中的一个或多个源数据字段分级为一个或多个安全级别,所述数据空间进一步包括一个或多个派生数据字段,每一个派生数据字段含有从一个或多个父级数据字段派生的数据,其中,所述父级数据字段是所述源数据字段或另一个派生数据字段;对于查询数据字段,记录用于产生所述查询数据字段的SQL(结构化查询语言)语句;解析所述SQL语句;基于所述所解析的SQL语句的构造谱系树,所述谱系树将所述查询数据字段追溯到一个或多个父级数据字段;以及至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的一个或多个安全级别来确定所述查询数据字段的安全级别。
在一些实施例中,至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的所述一个或多个安全级别来确定所述查询数据字段的所述安全级别可以包括:(1)基于一个或多个对应的第N个派生函数和所述一个或多个源数据字段的所述安全级别,确定与从所述谱系树中的所述一个或多个源数据字段派生的一个或多个第N级派生数据字段相对应的一个或多个第N个安全级别;(2)基于一个或多个对应的第N-1个派生函数和所述一个或多个源数据字段的安全级别和/或所述一个或多个第N个安全级别确定与从在所述谱系树中的所述一个或多个源数据字段和/或所述第N级派生数据字段派生的一个或多个第N-1级派生数据字段相对应的一个或多个第N-1个安全级别;以及在所述谱系树中朝向查询数据字段重复步骤(2),以确定所述查询数据字段的所述安全级别。
在一些实施例中,解析SQL语句可以包括将所述SQL语句转换为抽象语法树,并且基于所述所解析的SQL语句来构造所述谱系树可以包括:遍历所述抽象语法树以识别所述查询数据字段与所述源数据字段和/或派生数据字段中的一个或多个之间的派生关系。
在一些实施例中,所述查询数据字段和所述派生数据字段的安全级别可以基于直接的父级数据字段确定。
根据另一方面,一种用于数据安全分级的系统可以包括处理器,被配置为:接收访问查询数据字段的请求;从安全级别表中搜索所述查询数据字段;响应于从所述安全级别表中搜索到所述查询数据字段,从所述安全级别表中获得与所述查询数据字段相相对应的安全级别;以及响应于未从所述安全级别表中搜索到所述查询数据字段,至少基于谱系树和所述安全级别表来确定与所述查询数据字段相对应的安全级别。所述谱系树可追溯所述查询数据字段到一个或多个源数据字段,并且所述安全数据级别表可以包括与所述一个或多个源数据字段相对应的一个或多个安全级别。
根据另一方面,一种用于数据安全分级的系统可以包括处理器,被配置为:根据一个或多个规则将数据空间中的一个或多个源数据字段分级为一个或多个安全级别,所述数据空间进一步包括一个或多个派生数据字段,每一个派生数据字段含有从一个或多个父级数据字段派生的数据,其中,所述父级数据字段是所述源数据字段或另一个派生数据字段;对于查询数据字段,记录用于产生所述查询数据字段的SQL(结构化查询语言)语句;解析所述SQL语句;基于所解析的SQL语句构造谱系树,所述谱系树追溯所述查询数据字段到一个或多个父级数据字段;以及至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的一个或多个安全级别来确定所述查询数据字段的安全级别。
根据另一方面,耦接到处理器的非暂时性计算机可读存储介质可以包括指令,所述指令在由所述处理器执行时使所述处理器执行用于数据安全分级的方法。所述方法可以包括:接收访问查询数据字段的请求;从安全级别表中搜索所述查询数据字段;响应于从所述安全级别表中搜索到所述查询数据字段,从所述安全级别表中获得与所述查询数据字段相相对应的安全级别;以及响应于未从所述安全级别表中搜索到所述查询数据字段,至少基于谱系树和所述安全级别表确定与所述查询数据字段相对应的安全级别。所述谱系树可追溯所述查询数据字段到一个或多个源数据字段,并且所述安全数据级别表可以包括与所述一个或多个源数据字段相对应的一个或多个安全级别。
根据另一方面,耦接到处理器的非暂时性计算机可读存储介质可以包括指令,所述指令在由所述处理器执行时使所述处理器执行用于数据安全分级的方法。所述方法可以包括:根据一个或多个规则将数据空间中的一个或多个源数据字段分级为一个或多个安全级别,所述数据空间进一步包括一个或多个派生数据字段,每一个派生数据字段含有从一个或多个父级数据字段派生的数据,其中,所述父级数据字段是所述源数据字段或另一个派生数据字段;对于查询数据字段,记录用于产生所述查询数据字段的SQL(结构化查询语言)语句;解析所述SQL语句;基于所述所解析的SQL语句构造谱系树,所述谱系树追溯所述查询数据字段到一个或多个父级数据字段;以及至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的一个或多个安全级别来确定所述查询数据字段的安全级别。
根据另一方面,一种可由计算机实施的用于数据安全分级的方法可以包括:(1)接收与查询数据字段相关联的查询,以及(2)基于所述查询数据字段的一个或多个直接的上级数据字段的一个或多个相应的安全级别,以及从所述一个或多个直接的上级数据字段中的数据派生所述查询数据字段中的数据的派生函数,确定所述查询数据字段的安全级别。
在一些实施例中,步骤(2)可以包括:(3)对于是源数据字段的所述一个或多个直接的上级数据字段中的每一个,将与所述每一个源数据字段相关联的安全级别应用于步骤(2)的确定;以及(4)对于不是源数据字段的所述一个或多个直接的上级数据字段中的每一个,重复步骤(2),将所述直接的上级数据字段作为查询数据字段,直到所述直接的上数据字段的仅获得源数据字段,并应用步骤(3)。
本文公开的所述系统、方法和非暂时性计算机可读介质的这些和其它特征,以及结构的相关元件的操作和功能的方法以及部件的组合和制造的节约措施将参考附图并考虑以下描述和所附权利要求后变得更加明显,所有这些都构成本说明书的一部分,其中相同的附图标记表示各个图中的对应部分。然而,应清楚地理解,附图仅用于说明和描述的目的,并不旨在作为本发明的限制的定义。
附图说明
在所附权利要求中具体阐述了本发明技术的各个实施例的某些特征。通过参考以下利用本发明的原理的示例性实施例和附图的详细描述,可以更好地理解该技术的特征和优点,在附图中:
图1示出了根据各个实施例的用于数据安全分级的示例性环境。
图2示出了根据各个实施例的用于数据安全分级的示例性系统。
图3A示出了根据各个实施例的用于数据安全分级的示例性谱系树。
图3B示出了根据各个实施例的用于数据安全分级的另一个示例性谱系树。
图4A示出了根据各个实施例的用于数据安全分级的示例性方法的流程图。
图4B示出了根据各个实施例的用于数据安全分级的另一个示例性方法的流程图。
图4C示出了根据各个实施例的用于数据安全分级的另一个示例性方法的流程图。
图5示出了其中可以实施本文描述的实施例中的任何实施例的示例性计算机系统的框图。
具体实施方式
现有的基于规则的数据安全分级方法不足以为大量可能发生更改的数据提供保护。严格基于数据字段的特征或属性的传统规则通常在数据内容更改时失去其效果。进一步地,规则中通常调用的表或字段名称可能不正确地或不足以捕获对应的数据内容。因此,现有的数据安全分级技术要求不断更新规则,但是仍然使存储的数据处于潜在的风险之下。
所公开的用于数据安全分级的系统和方法至少减轻了当前技术中的上述缺点。在各个实施例中,可以从一定数量的包括源数据字段的源数据集创建包括派生数据字段的一些派生数据集,并且可以从一个或多个现有派生数据集和/或源数据集创建更多派生数据集。示例性数据空间可以包括数千个源数据字段和数百万个派生数据字段。为了有效地对这些派生数据字段进行分级,所公开的方法可以将数据谱系合并到分级过程中,其中,数据谱系可以直接地或经由一个或多个中间派生数据字段追溯每一个派生数据字段到确定的安全级别的一个或多个源数据字段。通过所公开的方法,针对源数据字段分级的安全级别可以根据其派生关系自动地通过各种级别中的中间派生数据字段而传播,以到达所查询的任何派生数据字段,并且可以响应于派生关系或数据内容的任何变化而动态地调整。因此,所公开的方法避免不断创建用于新添加的或新改变的派生数据字段的传统分级规则,并且可以防止依赖于表或字段名称的错误分级。总体而言,可以显著地提高数据安全。
图1示出了根据各个实施例的用于数据安全分级的示例性环境100。如图1所示,示例性系统100可以包括至少一个计算系统102,计算系统包含一个或多个处理器104和存储器106。存储器106可以是非暂时性的并且是计算机可读的。存储器106可以存储指令,当指令由一个或多个处理器104执行时,使一个或多个处理器104执行本文描述的各种操作。系统102可以实施为如移动电话、平板电脑、服务器、计算机、可穿戴装置(智能手表)等各种装置或在其上实施。系统102可以安装有合适的软件(例如,数据传输程序等)和/或硬件(例如,有线连接、无线连接等)以访问系统100的其它装置。
系统100可以包含系统102可访问的一个或多个数据存储(例如,数据存储108)和一个或多个计算装置(例如,计算装置109)。在一些实施例中,系统102可以被配置为从数据存储108(例如,云数据库)和/或计算装置109(例如,服务器、移动电话、车辆计算机)获得数据。
系统100可以进一步包含耦接到系统102的一个或多个计算装置(例如,计算装置107)。在一些实施例中,系统107可以被实施为服务器、移动电话、车辆计算机、平板电脑、可穿戴装置(智能手表)等。
在一些实施例中,系统102和计算装置(例如,计算装置109)中的一个或多个可以集成在单个装置或系统中。可替代地,系统102和一个或多个计算设备可以作为单独的装置而运行。一个或多个数据存储(例如,数据存储108)可以在系统102可访问的任何地方,例如,在存储器106中、在计算装置109中、在耦接到系统102的另一个装置(例如,网络存储装置)或另一个存储位置(例如,基于云的存储系统、网络文件系统等)等中。系统102可以被实现为单个系统或彼此耦合的多个系统。包括各种源数据集和派生数据集的数据空间可以由单个系统提供或分布在多个系统上。通常,系统102、计算装置109、数据存储108和系统107可以能够通过进行数据通信的一个或多个有线或无线网络(例如,因特网)彼此通信。
图2示出了根据各个实施例的用于数据安全分级的示例性系统200。图2中所示的并且在下面呈现的操作旨在是说明性的。在各个实施例中,系统102可以被配置为实施数据空间(例如,数据仓库)。数据空间可以包括从数据仓库外部的系统(例如,从数据存储108或计算装置109)收集的数据,并且根据源数据字段(例如,表格中存储的雇员姓名、薪水或其它数据字段)来组织。在一些实施例中,数据字段可以被视为存储各种数据条目的数据表中的列。系统102可以被配置为实施本文描述的各种数据安全分级步骤和方法。
在各个实施例中,计算装置107可以向系统102查询数据空间中的某个数据或某个数据字段的安全级别。可替代地,计算装置107可以向系统102查询数据空间中的某个数据。系统102可以例如基于登录信息来认证计算装置107的当前用户,并且确定当前用户的认证是否满足所查询的数据的安全级别。对应地,系统102可以返回数据或拒绝访问并返回对应的结果。
在一些实施例中,系统102可以接收访问某个数据字段(“查询数据字段”)的请求。数据字段可以与存储在存储器106和/或各种其它存储空间中的数据空间(例如,数据仓库)的数据条目的类别相关联。数据空间可以以各种格式(例如,表格数据集)存储数据并且由数据字段来组织数据。例如,对于数据字段“雇员姓名”,数据字段中的对应的数据可以包括“John Doe”、“Luke Webb”等。当用户查询数据字段中的部分或全部数据时,需要用数据字段的安全级别来确定所认证的用户是否有权访问数据。在此,系统102可以从安全级别表中搜索查询数据字段。安全级别表可以存储在存储器106中,或者以其它方式可被处理器104访问。安全级别表可以包括各种源数据字段的安全级别。例如,从数据仓库外部的系统收集的原始数据可以被视为源数据,并分配有对应的源数据字段。源数据字段的安全级别可以基于规则来确定。例如,用于对源数据字段进行分级的一个规则可以是,在其字段名称中含有单词“ID”的任何数据字段都被分配最高安全级别。本领域普通技术人员可以理解应用各种其它替代方法来对源数据字段的安全级别进行分级。
在此,在搜索安全级别表之后,系统102可以,响应于从安全级别表中搜索到查询数据字段,从安全级别表中获得与查询数据字段相相对应的安全级别。响应于未从安全级别表中搜索到查询数据字段,至少基于谱系树(lineage tree)和安全级别表来确定与查询数据字段相对应的安全级别。所述谱系树可追溯所述查询数据字段到一个或多个源数据字段,并且所述安全数据级别表可以包括与所述一个或多个源数据字段相对应的一个或多个安全级别。如所描述的,数据空间可以包括源数据字段和派生数据字段。某些派生数据字段可以各自从源数据字段中的一个或多个获得,并且更多派生数据字段可以各自从现有派生数据字段中的一个或多个和/或源数据字段中的一个或多个获得。因此,如果需要,任何派生数据字段都可以在一个或多个末端通过中间派生数据字段的层进行追溯,以最终到达其谱系树中的一个或多个源数据字段。进一步地,每一个派生可以对应于派生函数,并且派生函数可以与一个或多个父级数据字段的一个或多个安全级别到子级数据字段的安全级别的安全级别的转换相关联。因此,一个或多个源数据字段的安全级别可以用于获得下一层派生数据字段的安全级别,并且递归应用于下一层以获得所有派生数据字段的安全级别。
参考图3A,图3A示出了根据各个实施例的用于数据安全分级的示例性谱系树。图3A所示的和以下呈现的操作旨在是说明性的。此图示出了派生数据字段D0的谱系树。在此图中,所有源数据字段均以圆形表示,并且所有派生数据字段均以正方形表示。可以将源数据字段视为谱系树的根,并且可以将派生数据字段视为分支或叶子。在一些实施例中,谱系树可以追溯派生数据字段(例如,数据字段D0)到紧接在数据字段D0上方的一个或多个第一级父级数据字段(例如,数据字段D1A、D1B和O1)。每一个第一级父级数据字段可以是源数据字段(例如O1)或第一级派生数据字段(例如数据字段D1A和D1B),并且派生数据字段可以基于派生函数从一个或多个第一级父级数据字段派生。对于第一级派生数据字段,谱系树可以追溯第一级派生数据字段到一个或多个第二级父级数据字段(例如,追溯数据字段D1A到数据字段D2A,追溯数据字段D1B到数据字段D2A和O2),每一个第二级父级数据字段是源数据字段或第二级派生数据字段,并且第一级派生数据字段基于另一个派生函数从一个或多个第二级父级数据字段派生。所述追溯可以在任何派生数据字段上复制,直到追溯到源数据字段中的一个或多个为止(例如,数据字段D2A可以进一步追溯到O3和O1,并且不需要从源数据字段进行进一步追溯)。派生数据字段的各种级别与数据字段D0相关。也就是说,级别可以是谱系树中到达数据字段D0所需的箭头路径的数量。每一个箭头可指代与派生函数相对应的派生,从父级数据字段指向子级数据字段(任何源或派生数据字段都可以是父级数据字段,并且只有派生数据字段可以是子级数据字段)。派生函数可以是如用户指定的任何算法或等同物,如求和、加法、乘积、计数等。例如,数据字段D1A可以是数据字段D2A中的数据条目的总和。又例如,数据字段D2A和数据字段O2可以具有相同数目的条目,并且数据字段D1B可以是D2A的数据条目和O2的数据条目的一对一相加。
进一步地,谱系树可以包括派生函数,每一个派生函数与从对应的一个或多个父级数据字段到子级数据字段的安全级别转换相关联。这种对应的关系可以存储在表中。例如,对于求和函数(将两个或多个父级数据字段中的条目求和到子级数据字段中),将父级数据字段中的最高数据安全级别传递给子级数据字段的安全级别。也就是说,所获得的派生数据字段的安全级别可以是第一级父级数据字段的安全级别中的最高安全级别。又例如,对于计数函数(对父级数据字段中的数据条目进行计数以获得子级数据字段),可以将子级数据字段的安全级别设置为任意低级别。因此,至少基于谱系树和安全级别表来确定与查询数据字段相对应的安全级别可以包括:对于任意级别的每一个派生数据字段,至少基于(1)派生数据字段的派生函数和(2)派生数据字段的第一级父级数据字段的安全级别,获得派生数据字段的安全级别。可以逐层递归地应用这种确定算法,以最终链接到位于谱系树的根处的安全级别表中源数据字段的已知安全级别,因此通过插入源字段的安全级别可获得数据字段D0的安全级别。进一步地,可以随数据的任何变化(例如,数据条目的变化、派生函数的变化、数据字段的添加等)自动且动态地更新任何派生数据字段的安全级别。
在一些实施例中,至少基于谱系树和安全级别表来确定与查询数据字段相对应的安全级别可以进一步包括:确定与查询数据字段相对应的派生数据字段中的一个(例如,数据字段D0),并将确定的派生数据字段的安全级别用作查询数据字段的安全级别。也就是说,如果查询数据字段为D0,则可以调用D0的安全级别来处理查询。在一些其它实施例中,如上所述,如果查询数据字段与安全级别表中的存储的数据字段匹配,则可以直接从安全级别表中获得与存储的数据字段相对应的安全级别作为与查询数据字段相对应的安全级别。
返回参考图2,为了准确地返回查询数据字段的安全级别,系统102可以被配置为预先执行各步骤。在一些实施例中,系统102可以根据一个或多个规则来将数据空间中的一个或多个源数据字段分级为一个或多个安全级别。如上所述,除了源数据字段之外,数据空间可以进一步包括一个或多个派生数据字段,每一个派生数据字段含有从一个或多个父级数据字段派生的数据,其中,父级数据字段是源数据字段或另一个派生数据字段。在接收到对查询数据字段的查询时,系统102可以记录用于产生查询数据字段的SQL(结构化查询语言)语句。例如,SQL语句可以包括对现有的派生数据字段中的数据条目的数量进行计数,并且所计数的数量可以成为新的派生数据字段。所述记录可以实时执行。然后,系统102可以解析SQL语句(例如,通过将SQL语句转换为抽象语法树),并基于所解析的SQL语句构造谱系树,谱系树将查询数据字段追溯到一个或多个父级数据字段。例如,为了解析SQL语句,系统102可以将SQL语句转换为抽象语法树,并且为了构造谱系树,系统102可以遍历所述抽象语法树以识别查询数据字段与源数据字段和/或派生数据字段中的一个或多个之间的派生关系。因此,系统102可至少基于谱系树和查询数据字段的一个或多个父级数据字段的一个或多个安全级别来确定查询数据字段的安全级别。
参考图3B,图3B示出了根据各个实施例的用于数据安全分级的另一个示例性谱系树。图3B所示和以下呈现的操作旨在是说明性的。图3B中的符号与如上所述的图3A中的符号类似。图3B中所示的谱系树可以被认为是图3A所示的谱系树的概括。在一些实施例中,为了至少基于谱系树和查询数据字段的一个或多个父级数据字段的一个或多个安全级别来确定查询数据字段的安全级别,系统102可以:(1)基于一个或多个对应的第N个派生函数和一个或多个源数据字段的安全级别,确定与从谱系树中的一个或多个源数据字段派生的一个或多个第N级派生数据字段相对应的一个或多个第N个安全级别;(2)基于一个或多个对应的第N-1个派生函数和一个或多个源数据字段的安全级别和/或一个或多个第N个安全级别,确定与从在谱系树中的一个或多个源数据字段和/或第N级派生数据字段派生的一个或多个第N-1级派生数据字段相对应的一个或多个第N-1个安全级别;以及在谱系树中朝向查询数据字段重复步骤(2),以确定查询数据字段的安全级别。在此,可以基于直接的父级数据字段(直接指向子级数据字段的父级数据字段)确定查询数据字段和派生数据字段的安全级别。例如,可以从源数据字段的安全级别获得第N级数据字段的安全级别,可以从第N级数据字段的安全级别获得第N-1级数据字段的安全级别,依此类推以获得D0的安全级别。在此图中,子级数据字段的级别比其父级数据字段的最低级别低一级。例如,数据字段D(N-1)B从源数据字段OC和派生数据字段DNB派生。由于第N级数据字段DNB在数据字段D(N-1)B的所有父级数据字段中最低(此处,原始级别>第N级>第N-1级…>第1级),数据字段D(N-1)B的级别为第N-1级。
如此,可以基于其谱系树追溯到一个或多个源数据字段的安全级别来确定任何派生数据字段的安全级别。在数据空间中,各单独的谱系树都可以捕获对应的派生数据字段的动态变化。由于源数据字段的数量可能比派生数据字段更稳定并且数量更少,因此可以预先完成源数据字段的分级并将其应用于谱系树中,以根据各级别的派生函数获得派生数据字段的安全级别。
图4A示出了根据本公开的各个实施例的示例性方法400的流程图。方法400可以在包含例如图1的环境100的各种环境中实施。示例性方法400可以由系统102的一个或多个组件(例如,处理器104、存储器106)来实施。示例性方法400可以由类似于系统102的多个系统(例如,计算机)来实施。以下呈现的方法400的操作旨在是说明性的。取决于实施方式,示例性方法400可以包含以各种顺序或并行执行的附加的、更少的或替代的步骤。
在框402,可以接收访问查询数据字段的请求。在框404,可以从安全级别表中搜索查询数据字段。在框406,响应于从安全级别表中搜索到查询数据字段,可以从安全级别表中获得与查询数据字段相对应的安全级别。在框408,响应于未从安全级别表中搜索到查询数据字段,可以至少基于谱系树和安全级别表来确定与查询数据字段相对应的安全级别。所述谱系树可以将所述查询数据字段追溯到一个或多个源数据字段,并且所述安全数据级别表可以包括与所述一个或多个源数据字段相对应的一个或多个安全级别。
图4B示出了根据本公开的各个实施例的示例性方法410的流程图。方法410可以在包含例如图1的环境100的各种环境中实施。示例性方法410可以由系统102的一个或多个组件(例如,处理器104、存储器106)来实施。示例性方法410可以由类似于系统102的多个系统(例如,计算机)来实施。以下呈现的方法410的操作旨在是说明性的。取决于实施方式,示例性方法410可以包含以各种顺序或并行执行的附加的、更少的或替代的步骤。
在框412,可以根据一个或多个规则将数据空间中的一个或多个源数据字段分级为一个或多个安全级别,数据空间进一步包括一个或多个派生数据字段,每一个派生数据字段含有从一个或多个父级数据字段派生的数据,其中,父级数据字段是源数据字段或另一个派生数据字段。在框414,对于查询数据字段,可以记录用于产生查询数据字段的SQL(结构化查询语言)语句。在框416,可以解析SQL语句。在框418,可以基于所解析的SQL语句构造谱系树,谱系树追溯查询数据字段到一个或多个父级数据字段。在框419,可以至少基于谱系树和查询数据字段的一个或多个父级数据字段的一个或多个安全级别来确定查询数据字段的安全级别。
图4C示出了根据本公开的各个实施例的示例性方法420的流程图。方法420可以在包含例如图1的环境100的各种环境中实施。示例性方法420可以由系统102的一个或多个组件(例如,处理器104、存储器106)来实施。示例性方法420可以由类似于系统102的多个系统(例如,计算机)来实施。以下呈现的方法420的操作旨在是说明性的。取决于实施方式,示例性方法420可以包含以各种顺序或并行执行的附加的、更少的或替代的步骤。
在框422,可以接收与查询数据字段相关联的查询。例如,查询可以调用查询数据字段中的某个数据、查询数据字段的某个属性等。在框424,可以基于以下项目来确定查询数据字段的安全级别:查询数据字段的一个或多个直接的上级数据字段的一个或多个相应的安全级别,以及从一个或多个直接的上级数据字段中的数据派生查询数据字段中的数据的派生函数。如上所述,可以将查询数据字段追溯到其第一级父级数据字段(一个或多个直接的上级数据字段),其可以包含源数据字段和/或第一级派生数据字段。可以分别对第一级派生数据字段类似地追溯到其一个或多个直接的上级数据字段,并且每一次向前追溯可以在源数据字段处结束。在此,当接收到查询数据字段时,可以动态生成并获得中间数据字段(查询数据字段的谱系树中,不是源数据字段和查询数据字段的数据字段)的安全级别,并且可以不必预先存储和搜索所述安全级别。在一些实施例中,对于是源数据字段的一个或多个直接的上级数据字段中的每一个,可以将与每一个源数据字段相关联的安全级别应用于框424确定。对于不是源数据字段的一个或多个直接的上级数据字段中的每一个,可以重复框424,将直接的上级数据字段作为查询数据字段,直到直接的上级数据字段仅获得的源数据字段,并且可以应用框424确定与每一个源数据字段相关联的安全级别。
本文描述的技术由一个或多个专用计算装置实施。专用计算装置可以是硬连线的以执行技术,或可以包含电路系统或数字电子装置,如一个或多个被持续编程以执行这些技术的专用集成电路(ASIC)或现场可编程门阵列(FPGA),或可以包含一个或多个被编程为执行根据固件、存储器、其它存储器或组合中的程序指令中的技术的硬件处理器。这种专用计算装置还可将定制的硬连线逻辑电路、ASIC或FPGA与定制编程相结合以实现技术。专用计算装置可以是结合硬连线和/或程序逻辑来实施技术的台式计算机系统、服务器计算机系统、便携式计算机系统、手持式装置、网络装置或任何其它装置或装置的组合。一个或多个计算装置通常通过操作系统软件来控制和协调。传统的操作系统控制和调度用于执行的计算机进程、执行存储器管理、提供文件系统、网络、I/O服务,以及提供用户界面功能性,如图形用户界面(“GUI”)等。
图5是示出了可以在其上实施本文描述的实施例中的任何实施例的计算机系统500的框图。系统500可以对应于如上所述的系统102。计算机系统500包含用于传送信息的总线502或其它通信机构、一个或多个与总线502耦接以处理信息的硬件处理器504。例如,一个或多个硬件处理器504可以是一个或多个通用微处理器。一个或多个处理器504可以对应于如上所述的处理器104。
计算机系统500还包含主存储器506,如随机存取存储器(RAM)、高速缓存和/或其它动态存储设备,这些存储器与总线502耦接以存储将由处理器504执行的信息和指令。主存储器506还可用于在执行要由处理器504执行的指令期间来存储临时变量或其它中间信息。当存储在处理器504可访问的存储介质中时,这些指令使计算机系统500成为被定制成执行指令中指定的操作的专用机器。计算机系统500进一步包含与总线502耦接的只读存储器(ROM)508或其它静态存储设备,其用于存储处理器504的静态信息和指令。如磁盘、光盘或USB拇指驱动器(闪存驱动器)等存储设备510被提供并耦接到总线502,以存储信息和指令。主存储器506、ROM 508和/或存储设备510可以对应于如上所述的存储器106。
计算机系统500可使用定制的硬连线逻辑、一个或多个ASIC或FPGA、固件和/或程序逻辑来实施本文描述的技术,这些技术与计算机系统相结合使计算机系统500成为专用机器或将该系统编程为专用机器。根据一个实施例,本文的技术是通过计算机系统500响应于一个或多个处理器504执行在主存储器506中含有的一个或多个指令的一个或多个序列而执行的。这些指令可从另一个存储介质(如,存储设备510)读入主存储器506。执行在主存储器506中含有的指令序列使得一个或多个处理器504执行本文所述的处理步骤。在替代实施例中,可使用硬连线电路来代替软件指令或与软件指令结合使用。
主存储器506、ROM 508和/或存储设备510可以包含非暂时性存储介质。如本文所使用的术语“非暂时性介质”和类似术语是指存储使机器以特定方式操作的数据和/或指令的任何介质。这种非暂时性介质可以包括非易失性介质和/或易失性介质。非易失性介质包括例如光盘或磁盘,比如,存储设备510。易失性介质包含动态存储器,如主存储器506。例如,非暂时性介质的常见形式包含例如:软驱、软盘、硬盘、固态硬盘、磁带或任何其它磁数据存储介质、CD-ROM、任何其它光学数据存储介质、任何有孔图案的物理介质、RAM、PROM和EPROM、FLASH-EPROM、NVRAM、任何其它存储器芯片或盒式磁带,以及其网络版本。
计算机系统500还包含与总线502耦接的网络接口518。网络接口518提供与连接至一个或多个本地网络的一个或多个网络链路耦接的双向数据通信。例如,网络接口518可以是综合业务数字网(ISDN)卡、电缆调制解调器、卫星调制解调器或提供与对应类型的电话线的数据之间的通信连接调制解调器。再例如,网络接口518可以是局域网(LAN)卡,以提供与兼容LAN(或与WAN通信的WAN组件)的数据通信连接。还可使用无线链路。在任何这种实施方式中,网络接口518发送和接收携带表示各种类型信息的数字数据流的电信号、电磁信号或光信号。
计算机系统500可通过一个或多个网络、网络链路和网络接口518来发送消息和接收数据,包含发送和接收程序代码。在互联网实例中,服务器可通过互联网、ISP、本地网络和网络接口518来发送用于应用程序的所请求的代码。
所接收到的代码可由处理器504在被接收时执行,和/或存储在存储设备510或其它非易失性存储器中以供稍后执行。
前面部分中描述的流程、方法和算法中的每一个可通过由包括计算机硬件的一个或多个计算机系统或计算机处理器执行的代码模块来实现,并完全或部分实现自动化。所述流程和算法可部分或全部地在专用电路中实施。
上述各种特征和过程可彼此独立地使用,或可以各种方式组合使用。所有可能的组合和子组合都旨在落入本公开的范围内。另外,在一些实施方式中可省略某些方法或流程框。本文描述的方法和过程也不限于任何特定顺序,且与其相关的方框或状态可以适当的其它顺序来执行。例如,所描述的框或状态可以不同于具体公开的顺序来执行,或多个框或状态可在单个框或状态中组合。示例性框或状态可串行、并行或以某种其它方式来执行。可向所公开的示例性实施例中添加框或状态或从其中移除框或状态。本文描述的示例性系统和组件可与所描述的不同地来进行配置。例如,与所公开的示例性实施例相比,可添加、移除或重新布置元素。
本文描述的示例性方法的各种操作可以至少部分地通过算法来执行。算法可以包括在存储于存储器(例如,上述非暂时性计算机可读存储介质)中的程序代码或指令中。所述算法可以包括机器学习算法。在一些实施例中,机器学习算法可以不明确地对计算机进行编程以执行功能,而是从训练数据中学习以制作执行所述功能的预测模型。
本文描述的示例性方法的各种操作可以至少部分地由临时配置(例如,通过软件配置)或永久配置为执行相关操作的一个或多个处理器来执行。无论是临时配置还是永久配置,这种处理器可以构成运行为执行本文描述的一个或多个操作或功能的处理器实施的引擎。
类似地,本文描述的方法可以至少部分地由处理器实施,一个或多个特定处理器是硬件的实例。例如,方法的操作中的至少一些可以由一个或多个处理器或处理器实施的引擎执行。此外,一个或多个处理器还可以在“云计算”环境中或作为“软件即服务”(SaaS)运行以支持相关操作的执行。例如,至少一些操作可以由一组计算机(作为包含处理器的机器的实例)执行,这些操作可以通过网络(例如,互联网)和通过一个或多个适当的接口(例如,应用程序接口(API))访问。
某些操作的执行可以分布在处理器之间,不仅驻留在单个机器中,而且部署在多个机器。在一些示例性实施例中,处理器或处理器实施的引擎可以位于单独的地理位置中(例如,在家庭环境、办公室环境或服务器场内)。在其它示例性实施例中,处理器或处理器实施的引擎可以跨多个地理位置分布。
在整个说明书中,多个示例可实施被描述为单个示例的组件、操作或结构。尽管一个或多个方法的个别操作被示出并描述为单独的操作,但是可同时执行单独的操作中的一个或多个,且不需要以所示的顺序来执行这些操作。示例性配置中作为单独的组件展示的结构与功能性可以实施为组合结构或组件。类似地,作为单一组件展示的结构与功能可以实施为多个分离的组件。这些结构和功能及附加的变化、改动、添加及提高属于本文主题的范围。
尽管已经参考具体的示例性实施例描述了主题的概述,但是在不脱离本公开的实施例的更宽范围的情况下,可对这些实施例进行各种修改和改变。仅仅是为了方便,本发明中的主题的这些实施例可单独地或共同地通过术语“发明”来提及,如果事实上披露了多于一个披露或概念,则无意自愿将本申请的范围限制于任何单一的公开内容或概念。
本文示出的实施例被充分详细地描述,以使本领域技术人员能够实践所公开的教导。可以使用并从中派生出其它实施例,使得可以在不脱离本公开的范围的情况下进行结构和逻辑上的替换和改变。因此,具体实施方式不应被视为具有限制意义,且各个实施例的范围仅由所附权利要求以及这些权利要求所赋予的等同物的全部范围来限定。
本文描述的和/或在附图中描绘的流程图中的任何过程描述、元件或框都应被理解为潜在地表示包含用于实施过程中具体的逻辑功能或步骤的一个或多个可执行指令的模块、段或代码部分。如本领域技术人员所理解的,替代实施方式包含在本文描述的实施例的范围内,其中,可以根据所涉及的功能性来,从所示出或所讨论的元件或功能中删除元件或功能、打乱元件或功能的执行次序(包含基本上同时地或以相反的顺序)。
如本文所使用的,术语“或”可以以包括性或排它性的意义来解释。此外,可以提供本文中描述为单个示例的资源、操作或结构的多个示例。另外,各种资源、操作、引擎和数据存储之间的边界在某种程度上是任意的,并且在具体的说明性配置的上下文中说明了特定操作。功能性的其它分配被设想,并且其它分配可以落入本公开的各个实施例的范围内。通常,在示例性配置中表示为单独资源的结构和功能性可以实施为组合结构或资源。类似地,表示为单个资源的结构和功能性可以实施为多个分离的资源。这些和其它变体、修改、添加和提高落入如所附权利要求所表示的本公开的实施例的范围内。因此,说明书和附图被认为是说明性的而不是限制性的。
除非在所用上下文中另外明确说明或另外理解,否则条件性语言(如“能够”、“可能”、“也许”或“可以”等)通常旨在传达某些实施方式包含,而其它实施例不包含,某些特征、元件和/或步骤。因此,这种条件性语言通常不旨在暗示特征、元件和/或步骤以任何方式必须用于一个或多个实施例,或者一个或多个实施例必然包含用于确定以下的逻辑:在有或没有用户输入或提示的情况下,是否这些特征、元件和/或步骤包含在任何特定实施例中或将在其中执行。
Claims (20)
1.一种可由计算机实施的用于数据安全分级的方法,所述方法包括:
接收访问查询数据字段的请求;
从安全级别表中搜索所述查询数据字段;
响应于从所述安全级别表中搜索到所述查询数据字段,从所述安全级别表中获取与所述查询数据字段相相对应的安全级别;以及
响应于未从所述安全级别表中搜索到所述查询数据字段,至少基于谱系树和所述安全级别表确定与所述查询数据字段相对应的安全级别,其中:
所述谱系树追溯所述查询数据字段到一个或多个源数据字段;以及
所述安全数据级别表包括与所述一个或多个源数据字段相对应的一个或多个安全级别。
2.根据权利要求1所述的方法,其中:
所述谱系树追溯派生数据字段到一个或多个第一级父级数据字段,每一个第一级父级数据字段是所述源数据字段或第一级派生数据字段,并且所述派生数据字段基于派生函数从所述一个或多个第一级父级数据字段派生;
对于所述第一级派生数据字段,所述谱系树追溯所述第一级派生数据字段到一个或多个第二级父级数据字段,每一个第二级父级数据字段是所述源数据字段或第二级派生数据字段,并且所述第一级派生数据字段基于另一个派生函数从所述一个或多个第二级父级数据字段派生;
所述追溯在任意派生数据字段上复制,直到追溯到所述源数据字段中的一个或多个为止;以及
所述谱系树包括所述派生函数。
3.根据权利要求2所述的方法,其中,至少基于谱系树和所述安全级别表,确定与所述查询数据字段相对应的安全级别包括:
对于任意级别的每一个派生数据字段,至少基于(1)所述派生数据字段的所述派生函数和(2)所述派生数据字段的所述第一级父级数据字段的安全级别,获取所述派生数据字段的安全级别;以及
确定与所述查询数据字段相对应的所述派生数据字段中的一个,并将所确定的派生数据字段的安全级别作为所述查询数据字段的安全级别。
4.根据权利要求3所述的方法,其中:
所述所确定的派生数据字段的安全级别是所述派生数据字段的所述第一级父级数据字段的安全级别中的最高安全级别。
5.一种可由计算机实施的用于数据安全分级的方法,所述方法包括:
根据一个或多个规则将数据空间中的一个或多个源数据字段分级为一个或多个安全级别,所述数据空间进一步包括一个或多个派生数据字段,每一个派生数据字段含有从一个或多个父级数据字段派生的数据,其中,所述父级数据字段是所述源数据字段或另一个派生数据字段;
对于查询数据字段,记录用于产生所述查询数据字段的SQL(结构化查询语言)语句;
解析所述SQL语句;
基于所解析的SQL语句的构造谱系树,所述谱系树追溯所述查询数据字段到一个或多个父级数据字段;以及
至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的一个或多个安全级别,确定所述查询数据字段的安全级别。
6.根据权利要求5所述的方法,其中,至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的所述一个或多个安全级别,确定所述查询数据字段的安全级别包括:
(1)基于一个或多个对应的第N个派生函数和所述一个或多个源数据字段的安全级别,确定一个或多个第N级派生数据字段相对应的一个或多个第N个安全级别,所述第N级派生数据字段派生自所述谱系树中的所述一个或多个源数据字段;
(2)基于一个或多个对应的第N-1个派生函数和所述一个或多个源数据字段的所述安全级别和/或所述一个或多个第N个安全级别,确定一个或多个第N-1级派生数据字段相对应的一个或多个第N-1个安全级别,所述第N-1级派生数据字段派生自所述谱系树中的所述一个或多个源数据字段和/或所述第N级派生数据字段;以及
在所述谱系树中朝向所述查询数据字段重复步骤(2),以确定所述查询数据字段的安全级别。
7.根据权利要求5所述的方法,其中:
解析所述SQL语句包括将所述SQL语句转换为抽象语法树;以及
基于所解析的SQL语句构造谱系树包括:遍历所述抽象语法树以识别所述查询数据字段与所述源数据字段和/或派生数据字段中的一个或多个之间的派生关系。
8.根据权利要求5所述的方法,其中:
所述查询数据字段和所述派生数据字段的所述安全级别基于直接的父级数据字段确定。
9.一种用于数据安全分级的系统,包括处理器,所述处理器被配置为:
接收访问查询数据字段的请求;
从安全级别表中搜索所述查询数据字段;
响应于从所述安全级别表中搜索到所述查询数据字段,从所述安全级别表中获取与所述查询数据字段相相对应的安全级别;以及
响应于未从所述安全级别表中搜索到所述查询数据字段,至少基于谱系树和所述安全级别表确定与所述查询数据字段相对应的安全级别,其中:
所述谱系树追溯所述查询数据字段到一个或多个源数据字段;以及
所述安全数据级别表包括与所述一个或多个源数据字段相对应的一个或多个安全级别。
10.根据权利要求9所述的系统,其中,
所述谱系树追溯派生数据字段到一个或多个第一级父级数据字段,每一个第一级父级数据字段是所述源数据字段或第一级派生数据字段,并且所述派生数据字段基于派生函数从所述一个或多个第一级父级数据字段派生;
对于所述第一级派生数据字段,所述谱系树追溯所述第一级派生数据字段到一个或多个第二级父级数据字段,每一个第二级父级数据字段是所述源数据字段或第二级派生数据字段,并且所述第一级派生数据字段基于另一个派生函数从所述一个或多个第二级父级数据字段派生;
所述追溯在任意派生数据字段上复制,直到追溯到所述源数据字段中的一个或多个为止;以及
所述谱系树包括所述派生函数。
11.根据权利要求10所述的系统,其中,为了至少基于所述谱系树和所述安全级别表,确定与所述查询数据字段对应的安全级别,所述处理器被配置为:
对于任意级别的所述每一个派生数据字段,至少基于(1)所述派生数据字段的所述派生函数和(2)所述派生数据字段的所述第一级父级数据字段的安全级别,获取所述派生数据字段的安全级别;以及
确定与所述查询数据字段相对应的所述派生数据字段中的一个,并将所确定的派生数据字段的安全级别作为所述查询数据字段的安全级别。
12.根据权利要求11所述的系统,其中:
所述所确定的派生数据字段的安全级别是所述派生数据字段的所述第一级父级数据字段的安全级别中的最高安全级别。
13.一种用于数据安全分级的系统,包括处理器,所述处理器被配置为:
根据一个或多个规则将数据空间中的一个或多个源数据字段分级为一个或多个安全级别,所述数据空间进一步包括一个或多个派生数据字段,每一个派生数据字段含有从一个或多个父级数据字段派生的数据,其中,所述父级数据字段是所述源数据字段或另一个派生数据字段;
对于查询数据字段,记录用于产生所述查询数据字段的SQL(结构化查询语言)语句;
解析所述SQL语句;
基于所解析的SQL语句构造谱系树,所述谱系树追溯所述查询数据字段到一个或多个父级数据字段;以及
至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的一个或多个安全级别确定所述查询数据字段的安全级别。
14.根据权利要求13所述的系统,其中,为了至少基于所述谱系树和所述查询数据字段的所述一个或多个父级数据字段的所述一个或多个安全级别确定所述查询数据字段的所述安全级别,所述处理器被配置为:
(1)基于一个或多个对应的第N个派生函数和所述一个或多个源数据字段的安全级别,确定一个或多个第N级派生数据字段相对应的一个或多个第N个安全级别,所述第N级派生数据字段派生自所述谱系树中的所述一个或多个源数据字段;
(2)基于一个或多个对应的第N-1个派生函数和所述一个或多个源数据字段的所述安全级别和/或所述一个或多个第N个安全级别,确定一个或多个第N-1级派生数据字段相对应的一个或多个第N-1个安全级别,所述第N-1级派生数据字段派生自所述谱系树中的所述一个或多个源数据字段和/或所述第N级派生数据字段;以及
在所述谱系树中朝向所述查询数据字段重复步骤(2),以确定所述查询数据字段的安全级别。
15.根据权利要求13所述的系统,其中:
为了解析所述SQL语句,所述处理器被配置为将所述SQL语句转换为抽象语法树;以及
为了基于所解析的SQL语句构造所述谱系树,所述处理器被配置为遍历所述抽象语法树以识别所述查询数据字段与所述源数据字段和/或派生数据字段中的一个或多个之间的派生关系。
16.根据权利要求13所述的系统,其中:
所述查询数据字段和所述派生数据字段的所述安全级别基于直接的父级数据字段确定。
17.一种可由计算机实施的用于数据安全分级的方法,所述方法包括:
(1)接收与查询数据字段相关联的查询;以及
(2)基于以下来确定所述查询数据字段的安全级别:查询数据字段的一个或多个直接的上级数据字段的一个或多个相应的安全级别,以及从一个或多个直接的上级数据字段中的数据派生查询数据字段中的数据的派生函数。
18.根据权利要求17所述的方法,其中,步骤(2)包括:
(3)对于是源数据字段的所述一个或多个直接的上级数据字段中的每一个,将与每一个所述源数据字段相关联的安全级别应用于步骤(2)的确定;以及
(4)对于不是源数据字段的所述一个或多个直接的上级数据字段中的每一个,重复步骤(2),将所述直接的上级数据字段作为查询数据字段,直到对所述直接的上级数据字段仅获得源数据字段,并应用步骤(3)。
19.一种用于数据安全分级的系统,包括处理器,所述处理器被配置为:
(1)接收与查询数据字段相关联的查询;以及
(2)基于以下来确定所述查询数据字段的安全级别:查询数据字段的一个或多个直接的上级数据字段的一个或多个相应的安全级别,以及从一个或多个直接的上级数据字段中的数据派生查询数据字段中的数据的派生函数。
20.根据权利要求19所述的系统,其中,为了确定所述查询数据字段的所述安全级别,所述处理器被配置为:
(3)对于是源数据字段的所述一个或多个直接的上级数据字段中的每一个,将与每一个所述源数据字段相关联的安全级别应用于步骤(2)的确定;以及
(4)对于不是源数据字段的所述一个或多个直接的上级数据字段中的每一个,重复步骤(2),将所述直接的上级数据字段作为查询数据字段,直到对所述直接的上级数据字段仅获得源数据字段,并应用步骤(3)。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/036,865 | 2018-07-16 | ||
US16/036,865 US10922430B2 (en) | 2018-07-16 | 2018-07-16 | System and method for data security grading |
PCT/US2018/068075 WO2020018144A1 (en) | 2018-07-16 | 2018-12-29 | System and method for data security grading |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112639786A true CN112639786A (zh) | 2021-04-09 |
Family
ID=69139162
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880097090.7A Pending CN112639786A (zh) | 2018-07-16 | 2018-12-29 | 智能地标 |
Country Status (4)
Country | Link |
---|---|
US (2) | US10922430B2 (zh) |
CN (1) | CN112639786A (zh) |
BR (1) | BR112020027062B1 (zh) |
WO (1) | WO2020018144A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11960507B2 (en) * | 2020-01-17 | 2024-04-16 | International Business Machines Corporation | Hierarchical data |
CN113177220B (zh) * | 2021-05-27 | 2021-12-17 | 深圳市数存科技有限公司 | 一种可进行远程数据保护的业务安全系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100319067A1 (en) * | 2009-06-15 | 2010-12-16 | Sap Ag | Method and System for Managing Object Level Security Using an Object Definition Hierarchy |
CN102236766A (zh) * | 2011-05-10 | 2011-11-09 | 桂林电子科技大学 | 安全的数据项级数据库加密系统 |
CN102460441A (zh) * | 2009-06-15 | 2012-05-16 | 弗里塞恩公司 | 从数据库操作审核交易数据的方法和系统 |
US20130036127A1 (en) * | 2010-04-29 | 2013-02-07 | Simske Steven J | Document registry system |
CN104412266A (zh) * | 2012-06-29 | 2015-03-11 | 诺基亚公司 | 用于具有动态排序的树结构的多维数据储存和文件系统的方法和装置 |
CN104871158A (zh) * | 2012-10-26 | 2015-08-26 | 惠普发展公司,有限责任合伙企业 | 产品智能引擎 |
US20170300712A1 (en) * | 2016-04-14 | 2017-10-19 | Salesforce.Com, Inc. | Fine grain security for analytic data sets |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5878415A (en) | 1997-03-20 | 1999-03-02 | Novell, Inc. | Controlling access to objects in a hierarchical database |
US7031962B2 (en) | 2001-03-27 | 2006-04-18 | Bea Systems, Inc. | System and method for managing objects and resources with access rights embedded in nodes within a hierarchical tree structure |
US20050132054A1 (en) | 2003-12-10 | 2005-06-16 | International Business Machines Corporation | Fine-grained authorization by traversing generational relationships |
CN104077284A (zh) | 2013-03-26 | 2014-10-01 | 中国移动通信集团湖北有限公司 | 一种数据安全访问方法及系统 |
US9111104B2 (en) | 2013-03-29 | 2015-08-18 | Jive Software, Inc. | Entitlements determination via access control lists |
US9998472B2 (en) | 2015-05-28 | 2018-06-12 | Google Llc | Search personalization and an enterprise knowledge graph |
-
2018
- 2018-07-16 US US16/036,865 patent/US10922430B2/en active Active
- 2018-12-29 CN CN201880097090.7A patent/CN112639786A/zh active Pending
- 2018-12-29 WO PCT/US2018/068075 patent/WO2020018144A1/en active Application Filing
- 2018-12-29 BR BR112020027062-8A patent/BR112020027062B1/pt active IP Right Grant
-
2021
- 2021-01-06 US US17/142,428 patent/US11449628B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100319067A1 (en) * | 2009-06-15 | 2010-12-16 | Sap Ag | Method and System for Managing Object Level Security Using an Object Definition Hierarchy |
CN102460441A (zh) * | 2009-06-15 | 2012-05-16 | 弗里塞恩公司 | 从数据库操作审核交易数据的方法和系统 |
US20130036127A1 (en) * | 2010-04-29 | 2013-02-07 | Simske Steven J | Document registry system |
CN102236766A (zh) * | 2011-05-10 | 2011-11-09 | 桂林电子科技大学 | 安全的数据项级数据库加密系统 |
CN104412266A (zh) * | 2012-06-29 | 2015-03-11 | 诺基亚公司 | 用于具有动态排序的树结构的多维数据储存和文件系统的方法和装置 |
CN104871158A (zh) * | 2012-10-26 | 2015-08-26 | 惠普发展公司,有限责任合伙企业 | 产品智能引擎 |
US20170300712A1 (en) * | 2016-04-14 | 2017-10-19 | Salesforce.Com, Inc. | Fine grain security for analytic data sets |
Non-Patent Citations (2)
Title |
---|
ATHANASIOS D. BALOMENOS 等: "Reconstructing the forest of lineage trees of diverse bacterial communities using bio-inspired image analysis", 《2017 25TH EUROPEAN SIGNAL PROCESSING CONFERENCE (EUSIPCO)》, pages 1887 - 1891 * |
王小娟 等: "组合查询技术在电气元件数据库中的应用实例", 《西北水电》, no. 1, pages 55 - 57 * |
Also Published As
Publication number | Publication date |
---|---|
BR112020027062A2 (pt) | 2021-03-30 |
BR112020027062B1 (pt) | 2022-05-03 |
US11449628B2 (en) | 2022-09-20 |
US20200019722A1 (en) | 2020-01-16 |
WO2020018144A1 (en) | 2020-01-23 |
US10922430B2 (en) | 2021-02-16 |
US20210165903A1 (en) | 2021-06-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111782965B (zh) | 意图推荐方法、装置、设备及存储介质 | |
US20220335338A1 (en) | Feature processing tradeoff management | |
CN110471916B (zh) | 数据库的查询方法、装置、服务器及介质 | |
US20200050968A1 (en) | Interactive interfaces for machine learning model evaluations | |
US10318882B2 (en) | Optimized training of linear machine learning models | |
Kumar et al. | Twitter data analytics | |
Zhang et al. | Bed-tree: an all-purpose index structure for string similarity search based on edit distance | |
Poorthuis et al. | Making big data small: strategies to expand urban and geographical research using social media | |
US8108367B2 (en) | Constraints with hidden rows in a database | |
US20150100568A1 (en) | Automatic definition of entity collections | |
US8924373B2 (en) | Query plans with parameter markers in place of object identifiers | |
US20160103858A1 (en) | Data management system comprising a trie data structure, integrated circuits and methods therefor | |
US20150100605A1 (en) | Determining collection membership in a data graph | |
Gong et al. | Keywords‐driven web APIs group recommendation for automatic app service creation process | |
US11449628B2 (en) | System and method for data security grading | |
US20130041887A1 (en) | Adding entries to an index based on use of the index | |
Dixit | Elasticsearch essentials | |
US20150286700A1 (en) | Recording medium having stored thereon database access control program, method for controlling database access, and information processing apparatus | |
KR102062139B1 (ko) | 지능형 자료구조 기반의 데이터 처리 방법 및 그를 위한 장치 | |
DeBrie | The dynamodb book | |
US11436220B1 (en) | Automated, configurable and extensible digital asset curation tool | |
Avramovic et al. | Analysis of consensus sorting via the cycle metric | |
Huang et al. | A SPARQL query processing system using map-phase-multi join for big data in clouds | |
Guo | Distributed Time Series Analytics | |
Bagwari et al. | Indexing optimizations on Hadoop |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |