CN1585325B - 对数据项目的基于区域的安全管理 - Google Patents

对数据项目的基于区域的安全管理 Download PDF

Info

Publication number
CN1585325B
CN1585325B CN2004100590768A CN200410059076A CN1585325B CN 1585325 B CN1585325 B CN 1585325B CN 2004100590768 A CN2004100590768 A CN 2004100590768A CN 200410059076 A CN200410059076 A CN 200410059076A CN 1585325 B CN1585325 B CN 1585325B
Authority
CN
China
Prior art keywords
project
main
region
zone
main body
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
Application number
CN2004100590768A
Other languages
English (en)
Other versions
CN1585325A (zh
Inventor
I·胡迪斯
L·诺维克
S·阿南德
S·H·阿加瓦尔
B·S·拉曼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of CN1585325A publication Critical patent/CN1585325A/zh
Application granted granted Critical
Publication of CN1585325B publication Critical patent/CN1585325B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2145Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Storage Device Security (AREA)

Abstract

揭示了管理数字安全。数据和方法储存在计算机系统的卷中。卷被划分成不重叠安全区域。每一项目在一个安全区域中存在。向主体授予安全规则,其中,所述安全规则应用到特定区域中的项目。所述安全规则指定哪些主体具有对哪些项目的哪些权限;如读、写、删除和执行。主体可以通过分割安全区域来形成两个安全区域以委托管理权限。具有对安全区域的管理权限的主体向所述安全区域之一分配另外的主体,而维护对其它区域的所有管理权限。由此,主体能够保持对其自身专有的对特定项目的特定管理权限,而向其它主体委托对其它项目的管理权限。

Description

对数据项目的基于区域的安全管理
技术领域
本发明一般涉及数据安全领域,尤其涉及对数据项目组的安全管理
背景技术
在处理信息时,经常期望限制对信息的特定部分的访问,以使该特定部分仅对某些授权用户可访问。当信息包含在物理文档(如,印刷书本或账簿)中时,可利用诸如锁和文档保管员的物理访问控制来保护这些文档。然而,在当今的世界上,大量信息以数字数据的形式储存。数字数据易被创建、修改、复制、传输和删除,这导致了存在于众多位置中的大量数字数据的扩散。与物理文档类似,经常期望限制对部分数字数据的访问。然而,数字数据的庞然之量以及创建、复制、传输、修改和删除数字数据的简易性使保护数字数据具有挑战性。
现存的两种常见类型的数字数据存储是文件结构和数据库。文件结构是数据存储的分层系统,其中,包含数字数据的文件储存在文件夹中。文件夹可进一步储存在其它文件夹中。文件中的数字数据通过逐项方式来访问。换言之,访问文件时,经常已知文件中有何内容且访问文件是为了逐一审阅或操作文件中的数字数据。
另一方面,数据库一般在物理表中储存数字数据。物理表一般依照某一逻辑分组来组织。例如,数据库中的物理表可包含数字地址簿。包含数字地址簿的表还可具有指定表内信息类别的列。例如,数字地址簿可包括名、姓、电话号码、地址等列。
由于文件系统和数据库之间的差异,在这两种数字数据存储内实现安全性的方法也不同。例如,在文件结构内,可以对每一文件分配一个访问控制列表(ACL),其中,ACL是向计算机操作系统指示每一用户对给定文件具有哪一许可或访问权限的数据结构。ACL可指定特定用户或用户组具有某些特权,如读、写或执行许可。在文件结构内,可以向文件夹分配ACL,使文件夹内存在的任何文件夹或文件潜在地默认与ACL中阐明的分配相同的安全许可。然而,管理员可以基于对特定文件的访问需求改变缺省安全许可。因而,响应于操作文件的每一请求,必须访问文件的ACL以确定分配给该文件的许可。
对文件使用ACL的一个缺点是当执行诸如文件搜索等操作时,增加了的额外开销。例如,如果用户构造一个指定特定类型的文件或包含特定数据的文件的搜索,则该搜索在将该文件包括在搜索域内之前必须首先检查每一文件的ACL以确定用户对该文件具有的安全许可。例如,向用户展现他甚至无法访问的文件的存在可能是不适当的。由于文件夹内文件的缺省许可是可以改变的,所以即使当文件夹级的ACL潜在地使众多文件默认同一安全许可时也必须检查每一文件的ACL。
相反,数据库系统中的安全是通过向整个列分配ACL来完成的。向整个列分配ACL能使搜索更有效地执行,因为可以访问单个ACL来确定对整个列的数据的安全许可。可以配置数据库使其在用户具有适当的安全许可来访问列时仅能在该列上执行搜索。因而,不需要检查表内每一元素的许可。基于列的安全许可分配的一个缺点是对某些应用程序来说其粒度可能太过粗略。例如,尽管列中表示数字地址簿条目的大多数数字数据对一般访问来说是合适的,然而可能期望限制对某些数字数据的访问,如社会安全号或其它类型的敏感信息。尽管如此,当向整个列分配ACL时,安全许可无法在列中的不同项目之间变化。因此,可能无法限制对社会安全号的访问而不同时类似地限制对地址和电话号码的访问。
因此,一种允许用可配置的粒度分配给ACL的安全系统将是有益的。
发明内容
本发明的各方面针对对数据项目的基于区域的安全管理。在本发明的一个实施例中,计算机系统确定对项目的至少一部分的权限。计算机系统包括储存多个项目的卷,被划分成至少一个安全区域。储存在计算机系统的每一项目驻留在单个安全区域中。由于每一项目存在于单个安全区域内,因而可以创建规则以控制那些项目的安全,其中,无需为每一个别的项目指定规则,但取而代之,规则可应用于区域的子集。计算机系统访问指示主体(principal)身份的已被核实的验证信息。
计算机系统也访问卷的安全区域的规则。安全规则指定了主体或主体组对项目所具有的权限。安全规则至少包括元素、主体和权限变量。元素变量指定了如通过元素路径可对其授予权限的项目的至少一部分。通过元素路径指定项目的至少一部分对允许适当粒度的规则定义是有用的,使得无需对数据存储中每一个别单元(或信息片段)制定规则。主体变量能够指定至少一个主体。该至少一个主体是向其授予对项目的至少一部分的安全权限的实体。计算机系统基于访问的安全规则标识已核实的主体对该项目的至少一部分的权限。
在本发明的另一实施例中,计算机系统向主体委托管理权限。计算机系统包括储存有许多项目的卷,被划分成至少一个不重叠区域。每一项目驻留在至少一个不重叠的区域中的区域内。由于每一项目在一个区域内,可以适当的粒度委托管理权限,该粒度比整个数据库表精细,但仍足够粗,以便无需对每一项目委托。每一区域具有一个或多个拥有管理权限的主体。计算机系统在主区域中标识第一项目。
这些第一项目是将对其委托管理权限的项目。计算机系统将主区域分割为如两个区域,即第一区域和剩余主区域。具有管理权限的一个或多个主体保持对剩余主区域和第一区域的管理权限。第一区域包括先前标识的第一项目。剩余主区域包括主区域中除第一区域中的项目之外的项目。计算机系统指定一个或多个第一主体也具有对第一项目的管理权限。
本发明另外的特征和优点将在下文描述,通过阅读描述,能够部分清楚本发明的另外的特征和优点,或通过本发明的实践来学会。本发明的特征和优点可以通过所附权利要求书中特别指出的仪器和组合来实现并获得。阅读以下描述和所附权利要求书,可以完全明白本发明的这些和其它特征,或者可通过下文所述的本发明的实践来学会。
附图说明
为以能获取本发明的上述和其它优点和特征的方式描述,参考附图中说明的特定实施例,将对上文简要描述的本发明呈现更详细的描述。应当理解,这些附图仅描述了本发明的典型实施例,因此不应考虑为对其范围的限制,通过使用附图来描述并解释本发明另外的特征和细节,附图中:
图1所示是依照本发明的原理包含能管理安全的系统的示例网络体系结构;
图2所示是依照本发明的原理用于储存项目并定义规则的示例分层卷;
图3所示是依照本发明的原理划分成安全区域的示例分层卷;
图4所示是利用本发明的一些实施例的各方面委托权限的示例方法;
图5所示是利用本发明的一些实施例的各方面确定安全权限的示例方法;以及
图6所示是用于本发明原理的合适的操作环境。
具体实施方式
本发明延及基于区域的对数据项的安全管理的方法、系统和计算机程序产品。在一个实施例中,计算机系统确定对包括在安全区域中的数据项目的至少一部分的安全权限。通过元素路径指定数据项目的该部分,从而无需在单元级应用安全规则。在本发明的另一实施例中,计算机系统向主体委托管理权限(即,改变对数据项目的至少一部分的安全的能力)。每一项目驻留在至少一个不重叠的区域中的一个区域内。由于每一项目在一个区域内,可以适当的粒度委托管理权限,该粒度比整个数据库表精细,但是足够粗,以便无需对每一项目委托。
现在参考图1,示出了可实践本发明的各方面的示例性环境。图1示出了网络体系结构100。网络体系结构100包括能够储存各种数据项目和/或计算机可执行指令(如,方法)的存储102。存储102可以多种不同的存储媒质实现,包括但不限于下文在图6的描述中提出的。存储102包括能以分层格式储存数据项目的数据存储104。例如,项目106可包括一个或多个元素108。数据元素还可细分成依赖数据元素108的属性110。在分层格式中,一个数据项目可以是元素或较高级别的数据项目的属性。
存储102还包括能储存以分层格式排列的方法的方法存储112。方法项目114包括可以为方法的元素116。该元素还可包括较低层方法(如方法118)。较低层方法118其自身可以是有任其处理的其它子方法的方法。尽管示出方法存储112和数据存储104为单独的存储,方法存储112和数据存储104可以在同一层次中共同排列。因而,数据项目可具有依赖该数据项目的方法,或者方法可具有依赖该方法的数据项目属性。
在本发明的一个实施例中,网络体系结构100包括应用122,为用于执行各种功能的计算机可执行代码。应用程序122通过通信信道124连接到存储102。示出的通信信道124具有卷屏127,其中,卷屏127表示可以在应用122和存储102之间传递的数据项目、数据元素、数据属性、方法项目和方法。存在的另一通信信道126用于从应用向验证模块146传输令牌,如令牌128。
令牌128指定允许验证模块146确定呈现令牌的主体身份的信息。例如,在本示例中,令牌128包含标识主体,即应用122的信息。核实主体身份的过程经常被称为验证。验证模块148可访问验证信息的数据库以与令牌比较。在本发明的一个实施例中,验证数据库储存在存储102中。一旦验证了主体,就可以通过检查通过咨询访问控制列表(ACL)对该主体指定的权限来确定对该主体的权限。
存储102还包括一个或多个ACL 130,用于确定主体对存储102中的项目具有哪些权限。通常,ACL具有三个变量,包括主体变量、权限变量和项目变量。这三个变量一起指定了哪些主体对哪些项目具有何种权限。使用经过验证的令牌128,可以确定应用122具有访问数据存储104中的项目或执行方法存储112中的方法的权限。尽管在本示例中,示出了单个ACL,然而应当理解,在本发明的实施例中,ACL表示许多安全规则,每一安全规则向主体授予对项目的权限。
在本发明的一个实施例中,能够授予的四种权限是读、写、删除和执行。当授予读、写和删除权限时,允许主体分别审阅、操作并删除数据项目(如数据项目106)或元素(如元素108)或属性(如属性110)。当授予执行权限时,允许主体,如应用122调用方法,如方法118。
网络体系结构100还可包括用户接口132。用户接口132允许计算机用户134与网络体系结构100交互。用户接口132通过通信路径136连接到存储102。在网络体系结构100中示出的另一通信路径是路径138,用来从计算机用户134向用户接口132传输令牌140和查询或请求142。存在的再一通信路径是通信路径144,通过该通信路径,数据项目、元素和属性能够在计算机用户134和用户接口132之间传输。用户接口132通过通信路径136方便了数据项目、元素和属性至和自存储102的传输。
在本发明的一个实施例中,为使计算机用户134获取对数据存储104中的数据项目的访问或执行方法存储112中的方法,计算机用户134必须被授权以获取对数据项目的访问或执行方法。为方便这一过程,计算机用户134通过通信路径138向用户接口132发送令牌140。用户接口132通过通信路径126将令牌140定向到验证模块144。验证模块144然后核实计算机用户134的身份。诸如ACL 130的ACL确定计算机用户134具有的对数据存储104中的数据项目和方法存储112中的方法的权限。
在本发明的一个实施例中,可以由对数据存储104和方法存储112中的项目具有管理权限的管理主体创建ACL 130。管理主体可以是具有管理权限的多个主体之一。本发明的一个实施例中,具有管理权限的多个主体对安全区域中存在的所有项目而言是相同的,该安全区域在后文中更详细地描述。
尽管图1示出了网络体系结构100,应当理解,本发明的实施例可以以众多不同的体系结构实现,包括分布式计算环境、如图6所示并论述的单个计算机系统,或多种其它合适的系统。
通过分析图2和3,可以更充分地理解安全区域的概念。图2示出了在诸如存储102等存储中的项目的分层布局。在图2所示的示例中,示出项目在卷202中。如上所述,卷202可存在于如图6所示并论述的任一适当的存储位置中。卷202包含存储102中的所有项目。在一个示例中,整个卷202可包括单个区域。因而,多个主体对区域/卷202中所有项目具有管理权限,即,改变安全的能力。在本发明的其它实施例中,如图3所示,卷被划分成多个区域,如区域302和区域304。每一区域可具有拥有管理权限的不同的多个主体。因而,通过将卷202分割成区域302和304,可以向其它主体委托管理权限。
现在参考图4,在方法400中示出了向其它主体委托权限的方法。在本发明的一个实施例中,方法400在如图1的网络体系结构100的计算机系统中实践,其中,项目,如数据项目106和方法项目114储存在如图2所示的卷202的卷中。卷被划分成至少一个不重叠的区域,如区域302和304。方法400还考虑每一项目驻留于至少一个不重叠区域中的一个区域内。每一区域具有一个或多个管理主体。管理主体管理其所属的特定区域的安全和/或审核。方法400在向其它主体委托对第一项目的管理权限的上下文环境下设计,该第一项目包含在至少一个不重叠区域内的一个的区域中。
方法400包括用于形成第一区域的以功能效果为目的的步骤(步骤408)。步骤408可包括用于形成第一区域的任意相应行动。然而,在图4的示例方法中,步骤408包括在主区域中标识第一项目的相应行动(行动402)。行动402可包括计算机系统在主区域中标识第一项目。例如,网络体系结构100中的计算机系统能标识来自卷202的项目。经标识的第一项目可以是区域的一个或多个管理主体希望向其委托管理权限的项目。
步骤408还包括将主区域分割成第一区域和剩余主区域的相应行动(行动404)。行动404可包括计算机系统将主区域分割成第一区域和剩余主区域。例如,网络体系结构100中的计算机系统能将卷202分割成区域302和304。在两个区域形成于行动404的同时,该一个或多个主主体保持对第一区域和剩余主区域的管理权限。
主区域的分割使第一项目位于第一区域中,而剩余主区域包括原先在主区域中而不包含在第一项目中的那部分项目。图3示出了一个分割的示例。例如,主区域可以是卷202。分割致使区域302和304被创建。尽管卷最初包括项目306到328,然而分割致使项目324到328在一个区域(即,第一区域)中,而项目306到322在另一区域(即,剩余主区域)中。在这一点上,区域302和304的管理主体是相同的。
方法400还包括指定一个或多个第一主体也具有对第一项目的管理权限的行动(行动406)。行动406可包括计算机系统指定一个或多个第一主体也具有对第一项目的管理权限。例如,网络体系结构100中的计算机系统能指定一个或多个第一主体具有对区域302中的项目的管理权限。
行动406可以通过向一个或多个另外的主体分配管理权限来实现。因而,主主体和一个或多个另外的主体都具有区域中的项目的管理权限。例如,如果区域302是第一区域,则一个或多个主主体以及一个或多个第一主体对区域302中的项目都具有管理权限。管理权限可以是安全权限或审核权限。
方法400也可以是一个或多个第一主体可由一个或多个主主体改变。即,任一主主体能够向一个或多个第一主体添加主体,或从一个或多个第一主体中移除主体。
方法400也可包括以对应于第一区域的区域枚举标注第一区域中的项目。例如,如图3所示,以区域枚举330标注区域302中的项目。区域枚举330有益于跟踪哪些项目驻留在哪一区域中。当分割主区域时,检查剩余主区域和第一区域以确保这两个区域不具有任何重叠的项目。只要在分割区域时,检查了它们是不重叠的,就无需在第一区域和剩余主区域中进行重叠项目的检查。区域枚举也有益于当在项目之间添加新关系时确保没有重叠。例如,如果项目要关联到其它项目,所有关联的项目应当在同一区域中。这可以通过咨询区域枚举来实现。
在创建第一区域之后,可以向诸如区域302的第一区域添加如图1所示的储存在ACL 130中的安全规则。在本发明的一个实施例中,第一区域自动包括先前在主区域中的任何安全规则。在本发明的其它实施例中,第一区域不包括其创建之后的任何安全规则,必须对第一区域创建所有的新安全规则。
区域也可重新组合起来。区域应当或者与在创建该区域时所创建的其它区域重新组合,或者与在创建该区域时所创建的其它区域之外的某一时刻创建的区域重新组合。在分割剩余主区域以形成第二区域之后重新组合区域时出现一个难题。例如在图3中,如分界线332所示作出分割,将项目320组合成第二区域,而项目308到318以及322在随后的剩余主区域中。然而,通过重新组合第一区域和随后的剩余主区域可以创建一个新区域。在这一情况下,该随后的剩余主区域是对其管理主体具有原先用于主区域的主体的区域。重新组合的区域具有原先在主区域中的主体作为其主体。
当重新组合区域时,两个区域的安全规则保持在适当的位置。在新创建的区域中也可以定义其它安全规则。
现在参考图5,说明了使用本发明的各方面来确定安全权限的方法,如方法500。方法500可以在计算机系统中实践,如图1所示的网络体系结构100。计算机系统包括项目,如数据项目106和方法项目114。项目驻留在计算机系统上的卷中,如图2所示的卷202。卷被划分成至少一个安全区域。每一项目驻留在单个安全区域中。图3示出了这样一个示例。图3示出两个安全区域,区域302和区域304。区域302中的项目(项目324-326)没有一个驻留在区域304中。此外,区域304中的项目(项目306-322)没有一个驻留在区域302中。
方法500包括访问指示主体身份已被核实的验证信息的行动(行动502)。行动502可包括计算机系统访问指示主体身份已被核实的验证信息。例如,网络体系结构100中的计算机系统能访问验证模块146提供的验证信息或储存在高速缓存120中的验证信息。在本发明的一个实施例中,行动502由验证模块144,如图1所示的验证模块执行。
验证模块可从主体接收令牌,如令牌128或令牌140。验证模块然后将令牌中的信息与验证模块144中具有的可用信息相比较,以核实主体身份。这一信息可以在包含验证信息的数据库中可用。存在若干不同类型的令牌,如密码、加密串、诸如智能卡的物理密钥、诸如指纹的生物测定密钥、语音分析等等。可以使用的两种特定令牌是Windows令牌和经过验证的XrML许可组。行动502还可通过咨询高速缓存条目,如图1所示的高速缓存120中的条目来执行。特别地,在本发明的一个实施例中,一旦验证模块144验证了令牌,就可以将信息放置到高速缓存120中,以使随后在同一会话中的主体的验证立刻可以通过咨询高速缓存中的条目来完成。
方法500包括访问安全规则的行动(行动504)。行动504可包括计算机系统访问安全规则。例如,网络体系结构100中的计算机系统可访问来自ACL 130的安全规则。安全规则为安全区域而存在。安全规则可以在本发明的一个实施例中实施为如图1所示的ACL 130。安全规则可具有三个变量,即:元素、主体和权限变量。元素变量通过元素路径指定项目的至少一部分。
例如,如果安全规则对图3中的项目312授予权限,则元素变量将指定到项目312的路径,如306.308.312。这一路径包括最高项目-项目306,依赖于项目306的项目-项目308,以及最后对其应用安全的项目,即依赖于项目308的项目312。在本发明的另一实施例中,安全规则可指定一个元素为包括多个属性的复合元素。在这一情况下,可以向该元素的所有属性授予访问。例如,如果元素路径为306.310,则主体将具有对元素310的权限以及对依赖元素310的所有元素,包括元素316到322的权限。
另外,安全规则可指定主体仅能访问特定类型的元素。例如,复合元素是具有若干不同属性的元素。复合元素的一个特定示例是数字地址簿中的类型名字的元素。类型名字的元素可包括名、姓和中间名属性。若用户被授予对包括类型名字元素以及其它元素的项目的权限,则可以通过在安全规则中指定类型名字来将用户仅限制在类型名字元素上。
安全规则还可包括拒绝访问控制条目(ACE),从数据项目的至少一部分中排除至少一个元素。例如,规则可指定主体具有对项目310的权限。如上所述,如果仅指定了项目310,则主体具有对项目316、318、320和322的权限。然而,使用拒绝ACE,规则可指定主体具有对不包含项目320的项目310的权限。
安全规则包括指定具有安全权限的主体的主体变量。在本发明的一个实施例中,主体是计算机用户,如图1所示的计算机用户134。在本发明的另一实施例中,主体可以是在计算机系统上运行的应用程序,如在网络体系结构100上运行的应用122。主体变量可指定可以被授予权限的一组主体。例如,主体变量可包括所有网络管理员。安全规则也可包括拒绝ACE,其中,拒绝ACE从主体组中排除至少一个主体。
例如,规则可指定一组包括所有网络管理员的主体,而排除一个特定的管理员。如果在不同的安全规则中向被拒绝ACE排除的特定网络管理员授予权限,而这些权限是与从其中排除该网络管理员的安全规则中的相同,则该网络管理员将拥有所指定的安全权限。例如,如果一个安全规则指定除X之外的所有管理员具有对项目Y的权限,而第二安全规则指定管理员X具有对项目Y的权限,则管理员X具有对项目Y的权限。为移除管理员X对项目Y的权限,可以使用拒绝ACE以在授予对项目Y权限的每一规则中排除管理员X。本发明的一个实施例中的安全规则是授权,指可以授予权限。创建拒绝规则不能将权限从主体中取走,相反,必须修改或移除所有的授权规则以不允许主体具有特定的权限。
安全规则也可包括权限变量。本发明的各种实施例允许的权限包括读、写、删除和执行权限。如果向主体授予对项目的读权限,则该权限一般与主体可察看但不可更改或删除的数据项目相关联。若向主体授予对项目的写权限,则该权限一般与主体一般可察看并编辑但不可删除的数据项目相关联。如果向主体授予对项目的删除权限,则该权限一般与主体可察看、编辑并删除的数据项目相关联。如果授予对项目的执行权限,则该权限一般与主体可引发其执行的方法项目相关联。
方法500包括基于访问的安全规则标识已核实的主体对项目的至少一部分的权限的行动(行动506)。行动506可包括计算机系统基于访问的安全规则标识已核实的主体对项目的至少一部分的权限。例如,网络体系结构100中的计算机系统可基于从ACL 130访问的安全规则标识已核实的主体对项目324的权限。这样,在本发明的一个实施例中,网络体系结构100可确定诸如计算机用户134或应用122的主体具有对储存在存储102中的项目的何种访问。
如果在安全规则的主体变量中指定了主体,则方法500也可向主体授予在安全规则中指定的权限。
方法500也接收包括查询元素变量的查询。如果发送查询的主体对查询元素变量中的元素具有适当的权限,则方法500返回查询结果。例如,如果主体发送查询,请求特定项目内为“绿”的所有元素,且该主体对该项目或该项目中所有元素具有权限,则将返回为绿的元素。如果该主体对该项目中所有元素不具有权限,即使主体对项目中为绿的某些元素具有权限,查询也将返回“未找到”。完成这一过程,可使安全规则无需与每一元素关联而仍能够执行有效的搜索。因而,如果主体希望发送查询以找出所有“绿”元素,则主体可向除主体不对其具有权限的元素之外的所有元素发送查询。因此,例如,如果主体对图3所示的除元素320之外的项目310具有权限,则主体必须请求项目310中除项目320之外为绿的所有元素。
方法500也可控制用于修改安全规则其自身的权限。在这种情况下,安全规则作为一个项目包括在卷(如图2和3中的卷202)中。然后可利用另一安全规则设置该安全规则的安全。
在本发明的一个实施例中,提供了允许用户查询项目的有效安全的API。API基于安全规则的设置计算安全。API可以是可执行程序代码,如下文图6中所讨论的。
本发明的范围内的实施例也包括计算机可读媒质,在其上承载或储存有计算机指令或数据结构。这类计算机可读媒质可以是可由通用或专用计算机访问的任一可用媒质。作为示例而非局限,这类计算机可读媒质可包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储、磁盘存储或其它磁存储设备、或可用来以计算机可执行指令或数据结构的形式携带或储存所期望的程序代码方法并可由通用或专用计算机访问的任一其它媒质。当通过网络或另一通信连接(或者硬布线、或者无线、或硬布线和无线的组合)向计算机传输或提供信息时,计算机适当地将该连接视为计算机可读媒质。因而,任一这类连接被恰当地称为计算机可读媒质。上述的组合也应当包括在计算机可读媒质的范围内。计算机可执行指令包括,如,使通用计算机、专用计算机或专用处理设备执行特定功能或功能组的指令和数据。
图6及以下讨论提供对适于在其中实现本发明的计算环境的简要的一般描述。尽管并非所需,但本发明将在计算机可执行指令的一般语境下描述,计算机可执行指令如程序模块,由网络环境中的计算机执行。一般而言,程序模块包括例程、程序、对象、组件、数据结构等等,执行特定的任务或实现特定的抽象数据类型。计算机可执行指令、相关的数据结构以及程序模块代表了用于执行在此揭示的方法的步骤的程序代码手段的示例。这类可执行指令或相关数据结构的特定顺序代表了用于实现在这类步骤中所述功能的相应行动的示例。
本领域的技术人员可以理解,本发明可以在具有多种类型计算机系统配置的网络计算环境中实践,包括个人计算机、手持式设备、多处理器系统、基于微处理器或可编程消费电子设备、网络PC、小型机、大型机等等。本发明也可以在分布式计算环境中实践,其中,任务由通过通信网络连接(或者通过硬布线链路、或者通过无线链路、或通过硬布线或无线链路的组合)的本地和远程处理设备来执行。在分布式计算环境中,程序模块可位于本地和远程存储器存储设备中。
参考图6,用于实现本发明的示例性系统包括常规计算机620形式的通用计算装置,该装置包括处理单元621、系统存储器622以及将包括系统存储器622在内的各类系统组件耦合至处理单元621的系统总线623。系统总线623可以是若干种总线结构类型的任一种,包括存储器总线或存储器控制器、外围总线以及使用任一各类总线结构的本地总线。系统存储器包括只读存储器(ROM)624和随机存取存储器(RAM)625。基本输入/输出系统(BIOS)626,包含如在启动时协助在计算机620内的元件之间传输信息的基本例程,可储存在ROM 624中。
计算机620也可包括用于对磁硬盘639进行读取和写入的磁硬盘驱动器627、用于对可移动磁盘629进行读取和写入的磁盘驱动器628以及用于对可移动光盘631诸如CD-ROM或其它光媒质进行读取和写入的光盘驱动器630。磁硬盘驱动器627、磁盘驱动器628以及光盘驱动器630分别通过硬盘驱动器接口632、磁盘驱动器接口633和光盘驱动器接口634连接至系统总线623。驱动器及其相关的计算机可读媒质为计算机620提供了计算机可执行指令、数据结构、程序模块和其它数据的非易失存储。尽管在此所述的示例性环境使用磁硬盘639、可移动磁盘629以及可移动光盘631,但是也可以使用用于储存数据的其它类型的计算机可读媒质,包括盒式磁带、闪存卡、数字多功能盘、Bernoulli盒式磁盘、RAM、ROM等等。
包括一个或多个程序模块的程序代码方法可储存在硬盘639、磁盘629、光盘631、ROM 624或RAM 625中,包括操作系统635、一个或多个应用程序636、其它程序模块637以及程序数据638。用户可以通过键盘640、指向设备642或其它输入设备(未示出),如麦克风、操纵杆、游戏垫、圆盘式卫星天线、扫描仪等等向计算机620输入命令和信息。这些以及其它输入设备通常通过耦合至系统总线623的串行端口接口646连接至处理单元621。可选地,输入设备也可以通过其它接口连接,如并行端口、游戏端口或通用串行总线(USB)。监视器647或另一显示设备也通过接口,如视频适配器648连接至系统总线623。除监视器之外,个人计算机通常包括其它外围输出设备(未示出),如扬声器和打印机。
计算机620可在使用到一个或多个远程计算机,如远程计算机683和693的逻辑连接的网络化环境中运行。远程计算机683和693的每一个可以是另一个人计算机、服务器、路由器、网络PC、对等设备或其它公用网络节点,且通常包括许多或所有上述与计算机620相关的元件。图6描述的逻辑连接包括局域网(LAN)651和广域网(WAN)652,在此示出作为示例而非局限。这类网络环境常见于办公室范围或企业范围计算机网络、内联网以及因特网。
当在局域网网络环境中使用时,计算机620通过网络接口或适配器653连接至局域网651。当在广域网网络环境中使用时,计算机620可包括调制解调器654、无线链路或其它装置,用于通过广域网652,如因特网建立通信。调制解调器654可以是内置或外置的,通过串行端口接口646连接至系统总线623。在网络化环境中,所述的与计算机620相关的程序模块或其部分可储存在远程存储器存储设备中。可以理解,示出的网络连接是示例性的,也可以使用通过广域网652建立通信的其它装置。
本发明可以在不脱离其精神或本质特征的情况下以其它特定形式实施。所描述的实施例在相应方面仅作为说明而非限制来考虑。因此,本发明的范围由所附权利要求书而非上述描述指示。所有处于权利要求的等效技术方案的含义和范围内的变化都包含在其范围之内。

Claims (10)

1.一种在计算机系统中向其它主体委托对包括在至少一个不重叠区域的主区域中的第一项目的管理权限的方法,所述计算机系统包括储存在其中的至少一个卷中的项目,所述卷被划分成至少一个不重叠区域,每一项目驻留在所述至少一个不重叠区域中的区域内,每一区域具有拥有管理权限的一个或多个主体,其特征在于,所述方法包括:
在所述主区域中标识所述第一项目的行动;
将所述主区域分割成一第一区域和一剩余主区域的行动,一个或多个主主体保持对所述第一区域和所述剩余主区域的管理权限,所述第一区域包括所述第一项目,并且所述剩余主区域包括所述主区域中不包括在所述第一项目中的那部分项目;以及
指定一个或多个第一主体也具有对所述第一项目的管理权限的行动;
其中,所述方法还包括:在所述分割行动之后,对所述第一区域指定安全规则的行动,其中所述安全规则至少具有元素变量、主体变量和权限变量,所述安全规则中的至少一个通过元素路径指定了项目的至少一部分并指定至少一个主体。
2.如权利要求1所述的方法,其特征在于,指定所述一个或多个第一主体由所述一个或多个主主体执行。
3.如权利要求1所述的方法,其特征在于,它还包括使用对应于所述第一区域的区域枚举来标注所述第一项目的行动。
4.如权利要求1所述的方法,其特征在于,所述管理权限是安全权限。
5.如权利要求1所述的方法,其特征在于,所述管理权限是审核权限。
6.如权利要求1所述的方法,其特征在于,它包括在所述分割行动之前通过默认所述主区域中的安全规则来对所述第一区域指定安全规则的行动。
7.如权利要求1所述的方法,其特征在于,进一步包括在所述分割行动之后将所述第一区域和所述剩余主区域重新组合以创建新区域的行动。
8.如权利要求1所述的方法,其特征在于,进一步包括在所述分割行动之后重新组合所述第一区域以及随后的剩余主区域以创建新区域的行动,所述随后的剩余主区域从分割所述剩余主区域形成,其中,所述随后剩余主区域的管理主体是所述主区域中的管理主体。
9.一种在计算机系统中用于向其它主体委托对包括在至少一个不重叠区域中的主区域中的第一项目的管理权限的设备,所述计算机系统包括储存在其中的至少一个卷中的项目,其中所述卷被划分成至少一个不重叠区域,每一项目驻留在来自所述至少一个不重叠区域的区域中,每一区域具有拥有管理权限的一个或多个主体,其特征在于,所述设备包括:
用于在所述主区域中标识所述第一项目的装置;
用于将所述主区域分割成一第一区域和一剩余主区域的装置,一个或多个主主体保持对所述第一区域和所述剩余主区域的管理权限,所述第一区域包括所述第一项目,并且所述剩余主区域包括所述主区域中不包括在所述第一项目中的那部分项目;以及
用于指定一个或多个第一主体也具有对所述第一项目的管理权限的装置;
其中,所述设备还包括:用于在进行分割行动之后对所述第一区域指定安全规则的装置,其中所述安全规则至少具有元素变量、主体变量和权限变量,所述安全规则中的至少一个通过元素路径指定了项目的至少一部分并指定至少一个主体。
10.一种在计算机系统中向其它主体委托对包括在至少一个不重叠区域中的主区域中的第一项目的管理权限的方法,所述计算机系统包括储存在其中的至少一个卷中的项目,所述卷被划分成至少一个不重叠区域,每一项目驻留在来自所述至少一个不重叠区域的区域中,每一区域具有拥有管理权限的一个或多个主体,其特征在于,所述方法包括:
使用第一项目形成第一区域的步骤,所述第一区域从所述主区域形成,一个或多个主体具有对所述第一项目的管理权限;以及
指定一个或多个第一主体也具有对所述第一项目的管理权限的行动;
其中所述方法进一步包括:对所述第一区域指定安全规则的步骤,其中所述安全规则至少具有元素变量、主体变量和权限变量,所述安全规则中的至少一个通过元素路径指定了项目的至少一部分并指定至少一个主体。
CN2004100590768A 2003-07-30 2004-07-26 对数据项目的基于区域的安全管理 Expired - Fee Related CN1585325B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/630,162 US20050039001A1 (en) 2003-07-30 2003-07-30 Zoned based security administration for data items
US10/630,162 2003-07-30

Publications (2)

Publication Number Publication Date
CN1585325A CN1585325A (zh) 2005-02-23
CN1585325B true CN1585325B (zh) 2010-09-29

Family

ID=33541491

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2004100590768A Expired - Fee Related CN1585325B (zh) 2003-07-30 2004-07-26 对数据项目的基于区域的安全管理

Country Status (5)

Country Link
US (1) US20050039001A1 (zh)
EP (1) EP1503266B1 (zh)
JP (1) JP4892179B2 (zh)
KR (1) KR101101085B1 (zh)
CN (1) CN1585325B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070016771A1 (en) * 2005-07-11 2007-01-18 Simdesk Technologies, Inc. Maintaining security for file copy operations
US20070039045A1 (en) * 2005-08-11 2007-02-15 Microsoft Corporation Dual layered access control list
US8799680B2 (en) * 2005-09-15 2014-08-05 Microsoft Corporation Transactional sealed storage
EP2570961B1 (en) 2007-01-19 2019-03-13 BlackBerry Limited Selectively wiping a remote device
US10802990B2 (en) * 2008-10-06 2020-10-13 International Business Machines Corporation Hardware based mandatory access control
WO2021161104A1 (en) 2020-02-12 2021-08-19 Monday.Com Enhanced display features in collaborative network systems, methods, and devices
US11410129B2 (en) 2010-05-01 2022-08-09 Monday.com Ltd. Digital processing systems and methods for two-way syncing with third party applications in collaborative work systems
CN101895533A (zh) * 2010-07-05 2010-11-24 浙江汇信科技有限公司 统一身份认证系统中针对应用权限的委托授权的方法
US9792320B2 (en) * 2012-07-06 2017-10-17 Box, Inc. System and method for performing shard migration to support functions of a cloud-based service
US20160048700A1 (en) * 2014-08-14 2016-02-18 Nagravision S.A. Securing personal information
US10078618B2 (en) 2015-11-25 2018-09-18 Box, Inc. Accessing shared content using collaboration attribute partitioning
US10824751B1 (en) * 2018-04-25 2020-11-03 Bank Of America Corporation Zoned data storage and control security system
US10929556B1 (en) 2018-04-25 2021-02-23 Bank Of America Corporation Discrete data masking security system
US11698890B2 (en) * 2018-07-04 2023-07-11 Monday.com Ltd. System and method for generating a column-oriented data structure repository for columns of single data types
US11436359B2 (en) 2018-07-04 2022-09-06 Monday.com Ltd. System and method for managing permissions of users for a single data type column-oriented data structure
EP4062313A1 (en) 2019-11-18 2022-09-28 Monday.com Ltd. Collaborative networking systems, methods, and devices
US11775890B2 (en) 2019-11-18 2023-10-03 Monday.Com Digital processing systems and methods for map-based data organization in collaborative work systems
US11829953B1 (en) 2020-05-01 2023-11-28 Monday.com Ltd. Digital processing systems and methods for managing sprints using linked electronic boards
EP4143732A1 (en) 2020-05-01 2023-03-08 Monday.com Ltd. Digital processing systems and methods for enhanced collaborative workflow and networking systems, methods, and devices
US11277361B2 (en) 2020-05-03 2022-03-15 Monday.com Ltd. Digital processing systems and methods for variable hang-time for social layer messages in collaborative work systems
US11481288B2 (en) 2021-01-14 2022-10-25 Monday.com Ltd. Digital processing systems and methods for historical review of specific document edits in collaborative work systems
US11741071B1 (en) 2022-12-28 2023-08-29 Monday.com Ltd. Digital processing systems and methods for navigating and viewing displayed content
US11886683B1 (en) 2022-12-30 2024-01-30 Monday.com Ltd Digital processing systems and methods for presenting board graphics
US11893381B1 (en) 2023-02-21 2024-02-06 Monday.com Ltd Digital processing systems and methods for reducing file bundle sizes

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60118954A (ja) * 1983-11-30 1985-06-26 Fujitsu Ltd 多レベルアクセス保護方式
JPH04317173A (ja) * 1991-04-17 1992-11-09 Nec Software Ltd 利用者管理方式
US5956715A (en) * 1994-12-13 1999-09-21 Microsoft Corporation Method and system for controlling user access to a resource in a networked computing environment
CA2167790A1 (en) * 1995-01-23 1996-07-24 Donald S. Maier Relational database system and method with high data availability during table data restructuring
WO2000079434A1 (en) * 1999-06-22 2000-12-28 Internet Dynamics, Inc. Query interface to policy server
US6021508A (en) * 1997-07-11 2000-02-01 International Business Machines Corporation Parallel file system and method for independent metadata loggin
US6453419B1 (en) 1998-03-18 2002-09-17 Secure Computing Corporation System and method for implementing a security policy
US7152165B1 (en) * 1999-07-16 2006-12-19 Intertrust Technologies Corp. Trusted storage systems and methods
US6671776B1 (en) * 1999-10-28 2003-12-30 Lsi Logic Corporation Method and system for determining and displaying the topology of a storage array network having multiple hosts and computer readable medium for generating the topology
KR100343069B1 (ko) 2000-08-26 2002-07-05 박태규 다중 등급 보안 방식에 의한 강제적 객체접근 제어 방법및 이를 프로그램화하여 수록한 컴퓨터로 읽을 수 있는기록매체
EP1532543A4 (en) * 2000-09-11 2008-04-16 Agami Systems Inc STORAGE SYSTEM COMPRISING PARTITIONED METADATA THAT MIGRATE LIKELY
US6772157B2 (en) * 2000-10-19 2004-08-03 General Electric Company Delegated administration of information in a database directory
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
US8214377B2 (en) * 2003-04-07 2012-07-03 International Business Machines Corporation Method, system, and program for managing groups of objects when there are different group types

Also Published As

Publication number Publication date
KR101101085B1 (ko) 2011-12-30
KR20050014678A (ko) 2005-02-07
EP1503266A3 (en) 2006-12-06
US20050039001A1 (en) 2005-02-17
JP4892179B2 (ja) 2012-03-07
CN1585325A (zh) 2005-02-23
EP1503266A2 (en) 2005-02-02
JP2005050335A (ja) 2005-02-24
EP1503266B1 (en) 2012-06-06

Similar Documents

Publication Publication Date Title
CN1585325B (zh) 对数据项目的基于区域的安全管理
US7363650B2 (en) System and method for incrementally distributing a security policy in a computer network
US8161527B2 (en) Security Enhanced Data Platform
US6941472B2 (en) System and method for maintaining security in a distributed computer network
CN102112990B (zh) 为计算过程授予最小特权访问
KR100450402B1 (ko) 컴퓨터 시스템에 있어서 보안속성을 갖는 토큰을 이용한접근 제어방법
US20030115322A1 (en) System and method for analyzing security policies in a distributed computer network
Kabir et al. A role-involved purpose-based access control model
Sandhu Access control: The neglected frontier
US20070250905A1 (en) Method, System and Computer Program for Managing User Authorization Levels
US10013570B2 (en) Data management for a mass storage device
KR20080033376A (ko) 듀얼 계층 액세스 제어 리스트
US20130014283A1 (en) Database application security
CN107409129B (zh) 使用访问控制列表和群组的分布式系统中的授权
CN111931140A (zh) 权限管理方法、资源访问控制方法、装置和电子设备
JP2018013875A (ja) アクセス管理システム
JP4723930B2 (ja) 複合的アクセス認可方法及び装置
US11616782B2 (en) Context-aware content object security
CN106570413A (zh) 一种文件系统访问权限的控制系统及方法
TWI430130B (zh) 檔案使用權限管理系統
Weippl et al. SemanticLIFE Collaboration: Security Requirements and solutions–security aspects of semantic knowledge management
RU2792790C1 (ru) Устройство мандатного доступа к электронным информационным ресурсам
Iachello et al. A token-based access control mechanism for automated capture and access systems in ubiquitous computing
JP2003044362A (ja) 電子貸金庫システム
US11625365B2 (en) Method for managing virtual file, apparatus for the same, computer program for the same, and recording medium storing computer program thereof

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
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150428

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20150428

Address after: Washington State

Patentee after: Micro soft technique license Co., Ltd

Address before: Washington State

Patentee before: Microsoft Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100929

Termination date: 20190726

CF01 Termination of patent right due to non-payment of annual fee