CN101571897A - 一种对计算机系统中海量客体的访问权限进行控制的方法 - Google Patents
一种对计算机系统中海量客体的访问权限进行控制的方法 Download PDFInfo
- Publication number
- CN101571897A CN101571897A CNA2009100992773A CN200910099277A CN101571897A CN 101571897 A CN101571897 A CN 101571897A CN A2009100992773 A CNA2009100992773 A CN A2009100992773A CN 200910099277 A CN200910099277 A CN 200910099277A CN 101571897 A CN101571897 A CN 101571897A
- Authority
- CN
- China
- Prior art keywords
- attribute
- group
- objects
- groups
- permission
- 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
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种对计算机系统中海量客体的访问权限进行控制的方法;该方法首先定义被管理的客体的属性,包括固有属性和动态属性;然后建立属性组合和客体组之间的对应策略;从而将被管理的客体根据其属性与客体组对应起来。本发明采用客体组取代客体,系统把授权建立在客体组上,即对客体组中的所有客体都具有该权限,组和组之间可以互相嵌套,形成组之间的森林关系,组之间的权限可以继承。本发明将客体和访问权限的逻辑分离,基于客体组的策略极大的方便了权限管理;使用属性对应策略,只需要修改属性与组之间的对应关系,就可动态配置客体与组之间的关系,大大简化了权限配置的工作量;采用属性对应策略可以实现一些复杂的访问控制管理策略。
Description
技术领域
本发明涉及权限访问控制领域,尤其涉及一种海量客体访问控制方法。
背景技术
访问控制(Access Control)是计算机系统最重要和最基础的安全机制之一,它是对信息系统资源进行保护的重要措施。访问控制规定了主体对客体访问的限制,并在身份识别的基础上,根据身份对提出资源访问的请求加以控制。一般来说访问控制方案有:访问控制列表ACL(Access control list)、自主访问控制DAC(Discretionary Access Control)、强制访问控制MAC(Mandatory AccessControl)和基于角色的访问控制RBAC(Role-based Access Control)。
自从基于角色的访问控制(RBAC)由Sandhu等人在1996年被提出后,这个模型引起了世界范围内的广泛的关注,此后,Sandhu又相继提出了ARBAC97以及ARBAC02各种扩展模型。美国国家标准技术研究所(NIST)在2001年定义了RBAC的标准。基于角色的访问控制的基本思想就是根据安全策略划分出不同的角色,资源访问许可被封装在角色中,用户被指派到角色,用户通过角色间接地访问资源。RBAC的最大优点在于它能够灵活表达和实现组织的安全政策,使管理员从访问控制底层的具体实现机制中脱离出来,十分接近日常的组织管理规则。
一般来说采用RBAC访问控制授权方案已经成为一种流行趋势,但是随着企业应用规模不断扩大,传统的权限管理模型遇到了新的挑战:
1.需要被管理的敏感的客体对象越来越多。例如一个大型的CAD工程中,零件的数量数以万计。
2.由于企业分工细化,导致原有的可以看作是整体的客体现在被细粒度的划分为不同的客体,导致系统需要管理的客体的数量和种类越来越多。例如在一般性的人力管理系统中,简单的权限管理办法是把一个人看作是一个客体,如果获得了对这个人的访问权限,就可以对这个人的所有信息进行访问操作;而细粒度的管理的一种办法就是把这个人的信息分为不同级别的几部分,每个部分看作是不同的客体,要想访问不同的客体必须分别获得不同的访问权限。这样就使得原有的客体数量和种类大大增加了。
3.业务流程的复杂性导致了权限规则定义越来越复杂,对客体的访问控制要求也越来越复杂。例如可以定义某些机密客体访问的时间限制,使该类客体只能在特定的时间段内被授予访问的权限。
4.业务流程的易变性导致了权限规则的修改越来越频繁。例如在工作流系统中,主体对一些客体的权限会根据流程的进行而经常的变换。
如果继续采用经典的RBAC模型来解决上述问题,就会大大增加的权限管理的复杂度和开销。会大大增加信息系统中权限管理员的工作量,同时增加了权限错误配置的可能性。因为经典的RBAC模型在处理海量客体细粒度权限灵活分配等实际需求时显得力不从心。
尽管学者们对RBAC模型的改进与扩展进行了大量的研究工作,但其研究基本都是以主体为中心,重点往往集中在研究主体角色对应关系、角色冲突等方向。而对客体的研究没有充分的展开。
发明内容
本发明的目的在于针对海量客体访问控制的复杂性,提供一种对计算机系统中海量客体的访问权限进行控制的方法。
本发明的目的是通过以下技术方案来实现的:一种对计算机系统中海量客体的访问权限进行控制的方法,该方法首先定义被管理的客体的属性,包括固有属性和动态属性;然后建立属性组合和客体组之间的对应策略;从而将被管理的客体根据其属性与客体组对应起来。其中,对应策略包含两部分:一是根据被访问客体的固有属性将其分配到一个或多个客体组中,用户对该客体可执行建立在对应的客体组上的权限操作。二是根据被访问客体的动态属性,在运行时确定该客体是否属于具有该操作权限的客体组中,即决定了该权限操作是否可执行。
进一步地,所述固有属性是指客体本身所具有的特征属性,其特点是:自该属性被建立起来时,它就不会被改变或在一段足够长的时间内不会被改变。所述动态属性是指客体所属的外部环境经常变化的属性;动态属性包括:时间属性、空间属性以及客体所属的特定专业领域的属性。
进一步地,可以把海量客体访问客体看作是角色、客体组、操作按照层次关系构建的三元组。被访问对象的组织结构可以看作是客体、属性对应策略、客体组构建的三元组。
进一步地,客体与属性之间是多对多的关系,即一个客体可拥有多种属性,一种属性可属于多个客体。
进一步地,当系统需要进行权限认证时,其步骤如下:
(1)用户a向系统发出向客体b进行操作c的请求;
(2)系统首先确定用户a所拥有的一种或多种角色,然后根据客体b所拥有的属性值,使用属性对应策略找到b所属的一个或多个客体组;
(3)系统根据权限策略评估a所在的角色对b所在的客体组是否有c操作的权限;
(4)系统根据权限判定结果来拒绝或者响应客户的请求;
(5)当客体b的动态属性发生变化时,根据属性对应策略重新确定b所属的客体组,并执行步骤3;
(6)当属性对应策略发生变化时,重新确定b所在的客体组,并执行步骤3。
本发明的有益效果是:
1.相比传统RBAC的角色、客体、操作三元组模型,本发明采用客体组取代客体。系统把授权建立在客体组上,即对客体组中的所有客体都具有该权限,组和组之间可以互相嵌套,形成组之间的森林关系,组之间的权限可以继承。将客体和访问权限的逻辑分离,基于客体组的策略极大的方便了权限管理。例如在新增了一个客体后,一般只需将其加入到已经存在的客体组中即可实现,而无需重新建立每个角色与其对应的权限关系。除了方便权限管理外,客体组模式很好的描述了客体之间的层次概念。
2.采用属性对应策略来动态的确定客体和客体组之间的关系。当客体的数量巨大的时候,建立和维护客体和客体组之间的关系是非常繁琐的。如果使用属性对应策略,只需要修改属性与组之间的对应关系,就可动态配置客体与组之间的关系,大大简化了权限配置的工作量。例如:一个有十万个各式零件的客体组中,其中要把一万个螺丝零件赋予新的权限,一般的做法是建立一个新客体组,将一万个螺丝零件从元组中删除,并将其加入到新组中。而采用属性对应策略,只需修改螺丝零件至新客体组的对应关系即可实现分组功能。
3.采用属性对应策略可以实现一些复杂的访问控制管理策略。例如,定义客体的时间动态属性,可以制定一条属性对应策略为在某段时间内某一类客体属于某客体组,其他时间段内不属于该客体组。这样就可以自动实现一些比较复杂的访问控制需求。
附图说明
图1是本发明海量客体基于属性对应策略访问控制模型图;
图2是海量客体访问控制方法的访问控制实施流程图;
图3是海量客体访问控制方法的定义客体流程图。
具体实施方式
下面结合附图详细描述本发明,本发明的目的和效果将变得更加明显。
本发明的一种海量客体访问控制的方法,其访问控制模型是由角色、客体组和操作组成的三元组。角色指的是系统中具有一些特定权限的一种职位或者分工,系统中的用户(主体)与角色是多对多的关系。客体组指的是具有相同特征的一类客体的集合,客体和客体组之间是多对多的关系。操作指的是指对客体可以进行的动作。
属性是客体所具有的一种特征或客体具有的一种环境变量。客体的属性分为固有属性和动态属性两种,固有属性是指客体本身具有的特征属性,例如客体的类型,它的特点是不会变化或者在一段足够长的时间内不会被改变。一段足够长的时间一般是指系统的一个工作周期;动态属性是指客体所属的外部环境经常变化的属性,例如时间属性,空间属性等。
属性对应策略是将客体对应到客体组的方法,是预先定义好的运行时的动态策略函数。即根据客体的固有属性值和动态属性值按照对应规则将其划分到不同的客体组中。一个客体可以属于一个或多个客体组,一个客体组中包含一个或多个客体。
对于任意的电子信息处理系统,尤其是针对有海量客体需管理的系统,如果需要进行访问控制,无论是单机应用系统、网路应用系统、分布式系统甚至是操作系统,都可以采用实施本发明或本发明的一部分。
如图1所示,本发明中设计的访问控制三元组模型是由角色、客体组和操作组成的。
用户(User):应用系统的使用者,可以是人、机器等。
角色(Role):应用系统中的具有一定权限的职位或者分工。如:经理、系统管理员等。
客体(Object):应用系统中所管理的对象。如:电子文档,CAD零件等。
客体组(Object Group):具有相同特征的一类客体的集合。如:企业机密文件组,CAD螺丝零件组等。
操作(Operation):对客体的可执行动作。例如浏览、读取、写入、修改、删除等。
用户分配(User Assignment,UA):根据用户在组织中的责任和能力被赋予对应各个角色的成员。它是用户集U到角色集R的一种多对多的关系,一个用户可以属于多个角色,一个角色可以分派多个用户。(u,r)∈UA表示用户u被赋予了角色r。
属性(Attribute):客体所具有的一种特征或客体具有的一种环境变量,分为固有属性(Natural Attribute)和动态属性(Dynamic Attribute)两种。客体集O和属性集A之间是多对多的关系,一个客体可以有多个属性,一个属性可以隶属于多个客体。
属性对应策略(Object Attribute Assignment,OAA):作用与UA类似,是预先定义好的运行时的动态策略函数,根据客体的固有属性值和动态属性值按照对应规则将其划分到不同的客体组中。它是属性集A到客体组集OG的一种多对多的关系,一个属性可以分派到多个客体组,一个客体组可以对应多个属性。
权限(Permission):系统以三元组(r,og,o)的模式存储权限,表示一种角色r对一个客体组og中所有的客体具有操作o的权限。
由图2所示,系统在判定某用户是否有权限对一个客体进行操作时的过程是先取得该用户所属的角色集R,再取得该客体的所有属性,并根据属性对应策略得到该客体所属的客体组的集合OG,得到权限三元组的集合P是角色集R与客体组集OG和操作o的笛卡尔积。
图3所示的内容是系统在管理客体时的流程。一般来说包括创建客体对象、修改客体对象和删除客体对象三部分。创建客体对象不仅要进行对象命名等基本信息录入,还要定义客体的属性,如果是动态属性的话,则需要定义动态属性的变化规律,并且给该属性赋值。修改客体和删除客体都涉及到了是否要修改属性对应策略。在修改属性对应策略的时候要注意检查策略是否有前后不一致的现象。
下面重点说明客体属性定义以及属性对应策略的具体实施案例。
在数据库中,客体object的定义如下表:
表:object定义
表中Object_id是主键,也将客体表与属性值表中的记录对应,使该客体所拥有的属性集可在客体属性值Attribute_value表中查询出。可根据实际应用系统的需求增加本表中的内容。
在数据库中,客体组object_group的定义如下表:
表:object_group定义
表中Object_group_id是主键,也将客体组表与属性组合对应表中的记录对应。可根据实际应用系统的需求增加本表中的内容。
在数据库中,属性attribute的定义如下表:
表:attribute_difine定义
本表中属性的值的个数是32个,例如一个零件客体的属性名称为为“类别”的属性值Attribute_value可能是螺丝、螺帽、钢板等等。一项属性最多有32个值,可根据实际应用增加或减少属性值的个数。
在数据库中,客体的属性值attribute_value的定义如下表:
表:attribute_value定义
表中Object_id和Attribute_id是外键,分别对应object表中的客体和attribute_difine表中的属性。一个object_id可以与多个attribute_id对应,一个attribute_id也可以对应多个object_id。Attribute_value是一个32为的binary值,该值默认情况下为32个“0”,如果该值的第n位为“1”则代表该属性的值是对应在attribute_difine表中的第n个属性的值。一般情况下一个属性只能取一个值,但有些情况下一个属性的值可能有多个。这样用一个32位的binary就可以表示客体某属性的值是32个预设值中的哪个或哪些。
在数据库中,客体的属性组合attribute_group的定义如下表:
表:attribute_group定义
表中Attribute_id是外键,对应到attribute_difine表中的Attribute_id,对于一个Attribute_group_id来说,有一条或多条记录,对应这种属性组合中的一个或多个属性及其取值。
在数据库中,属性组合对应表attribute_mapping的定义如下表:
表:attribute_mapping定义
表中Object_group_id和Attribute_group_id是外键,分别对应object_group表中的客体组和属性组合表中的一种组合。Conditaion_value表示该属性对应策略成立的条件,该字段实现了本发明中动态属性作用于属性对应策略的机制。系统为该字段可以预设几种判定条件,在访问进行时先获取客体的动态属性值,再判定该条属性对应策略是否成立。
在数据库中,权限最终定义在下表中:
表:permission定义
系统将权限建立在角色-客体组-操作的三元组上。
当系统需要进行权限认证时,其步骤如下:
(1)用户a向系统发出向客体b进行操作c的请求;
(2)系统首先确定用户a所拥有的一种或多种角色,然后根据客体b所拥有的属性值,使用属性对应策略找到b所属的一个或多个客体组;
(3)系统根据权限策略评估a所在的角色对b所在的客体组是否有c操作的权限;
(4)系统根据权限判定结果来拒绝或者响应客户的请求;
(5)当客体b的动态属性发生变化时,根据属性对应策略重新确定b所属的客体组,并执行步骤3;
(6)当属性对应策略发生变化时,重新确定b所在的客体组,并执行步骤3。
以上所述的实施方法仅为本发明的一个实例,对于本领域的一般技术人员而言,在不背离本发明原理的前提下对其进行的显而易见的改动,都属于本发明的构思和所附权利要求的保护范围。
Claims (7)
1.一种对计算机系统中海量客体的访问权限进行控制的方法,其特征在于,该方法首先定义被管理的客体的属性,包括固有属性和动态属性;然后建立属性组合和客体组之间的对应策略;从而将被管理的客体根据其属性与客体组对应起来。其中,对应策略包含两部分:一是根据被访问客体的固有属性将其分配到一个或多个客体组中,用户对该客体可执行建立在对应的客体组上的权限操作。二是根据被访问客体的动态属性,在运行时确定该客体是否属于具有该操作权限的客体组中,即决定了该权限操作是否可执行。
2.根据权利要求1所述的方法,其特征在于:所述固有属性是指客体本身所具有的特征属性,其特点是:自该属性被建立起来时,它就不会被改变或在一段足够长的时间内不会被改变。
3.根据权利要求1所述的方法,其特征在于:所述动态属性是指客体所属的外部环境经常变化的属性。动态属性包括:时间属性、空间属性以及客体所属的特定专业领域的属性。
4.根据权利要求1所述的方法,其特征在于:可以把海量客体访问客体看作是角色、客体组、操作按照层次关系构建的三元组。
5.根据权利要求4所述的方法,其特征在于:被访问对象的组织结构可以看作是客体、属性对应策略、客体组构建的三元组。
6.根据权利要求1所述的方法,其特征在于:客体与属性之间是多对多的关系,即一个客体可拥有多种属性,一种属性可属于多个客体。
7.根据权利要求1~6所述的方法,其特征在于,当系统需要进行权限认证时,其步骤如下:
(1):用户a向系统发出向客体b进行操作c的请求。
(2):系统首先确定用户a所拥有的一种或多种角色,然后根据客体b所拥有的属性值,使用属性对应策略找到b所属的一个或多个客体组。
(3):系统根据权限策略评估a所在的角色对b所在的客体组是否有c操作的权限。
(4):系统根据权限判定结果来拒绝或者响应客户的请求。
(5):当客体b的动态属性发生变化时,根据属性对应策略重新确定b所属的客体组,并执行步骤3。
(6):当属性对应策略发生变化时,重新确定b所在的客体组,并执行步骤3。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100992773A CN101571897A (zh) | 2009-06-04 | 2009-06-04 | 一种对计算机系统中海量客体的访问权限进行控制的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA2009100992773A CN101571897A (zh) | 2009-06-04 | 2009-06-04 | 一种对计算机系统中海量客体的访问权限进行控制的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101571897A true CN101571897A (zh) | 2009-11-04 |
Family
ID=41231253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2009100992773A Pending CN101571897A (zh) | 2009-06-04 | 2009-06-04 | 一种对计算机系统中海量客体的访问权限进行控制的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101571897A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102012981A (zh) * | 2010-11-16 | 2011-04-13 | 传神联合(北京)信息技术有限公司 | 一种通用权限等级分配与匹配方法及其系统 |
CN102468971A (zh) * | 2010-11-04 | 2012-05-23 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 权限管理方法和装置、权限控制方法和装置 |
CN108737371A (zh) * | 2018-04-08 | 2018-11-02 | 努比亚技术有限公司 | Hive数据访问控制方法、服务器及计算机存储介质 |
CN109492376A (zh) * | 2018-11-07 | 2019-03-19 | 浙江齐治科技股份有限公司 | 设备访问权限的控制方法、装置及堡垒机 |
CN110390205A (zh) * | 2018-04-19 | 2019-10-29 | 腾讯科技(深圳)有限公司 | 权限配置策略的确定方法和装置 |
CN110427744A (zh) * | 2019-06-20 | 2019-11-08 | 中国科学院信息工程研究所 | 一种支持业务安全标记的身份管理方法及系统 |
CN113590742A (zh) * | 2021-06-17 | 2021-11-02 | 北京中软国际信息技术有限公司 | 一种云平台访问控制方法 |
-
2009
- 2009-06-04 CN CNA2009100992773A patent/CN101571897A/zh active Pending
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102468971A (zh) * | 2010-11-04 | 2012-05-23 | 北京北方微电子基地设备工艺研究中心有限责任公司 | 权限管理方法和装置、权限控制方法和装置 |
CN102012981A (zh) * | 2010-11-16 | 2011-04-13 | 传神联合(北京)信息技术有限公司 | 一种通用权限等级分配与匹配方法及其系统 |
CN102012981B (zh) * | 2010-11-16 | 2012-09-05 | 传神联合(北京)信息技术有限公司 | 一种通用权限等级分配与匹配方法及其系统 |
CN108737371A (zh) * | 2018-04-08 | 2018-11-02 | 努比亚技术有限公司 | Hive数据访问控制方法、服务器及计算机存储介质 |
CN110390205A (zh) * | 2018-04-19 | 2019-10-29 | 腾讯科技(深圳)有限公司 | 权限配置策略的确定方法和装置 |
CN110390205B (zh) * | 2018-04-19 | 2023-05-23 | 腾讯科技(深圳)有限公司 | 权限配置策略的确定方法和装置 |
CN109492376A (zh) * | 2018-11-07 | 2019-03-19 | 浙江齐治科技股份有限公司 | 设备访问权限的控制方法、装置及堡垒机 |
CN109492376B (zh) * | 2018-11-07 | 2021-11-12 | 浙江齐治科技股份有限公司 | 设备访问权限的控制方法、装置及堡垒机 |
CN110427744A (zh) * | 2019-06-20 | 2019-11-08 | 中国科学院信息工程研究所 | 一种支持业务安全标记的身份管理方法及系统 |
CN113590742A (zh) * | 2021-06-17 | 2021-11-02 | 北京中软国际信息技术有限公司 | 一种云平台访问控制方法 |
CN113590742B (zh) * | 2021-06-17 | 2023-12-26 | 北京中软国际信息技术有限公司 | 一种云平台访问控制方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101571897A (zh) | 一种对计算机系统中海量客体的访问权限进行控制的方法 | |
US8793489B2 (en) | Method and system for controlling data access to organizational data maintained in hierarchical | |
US7155720B2 (en) | Dynamic task assignment in workflows | |
CN100458813C (zh) | 带有精细访问控制策略的基于角色的访问控制模型的方法 | |
US6141778A (en) | Method and apparatus for automating security functions in a computer system | |
US8433717B2 (en) | System and method for efficiently securing enterprise data resources | |
US8250094B2 (en) | Relational lockdown for an item store | |
MX2008014856A (es) | Traduccion de politica de control de acceso a base de papel a politica de autorizacion de recurso. | |
CN101453475A (zh) | 一种授权管理系统及方法 | |
CN101866360A (zh) | 基于对象多维属性空间的数据仓库鉴权方法及系统 | |
CN101853358A (zh) | 一种文件对象权限管理的实现方法 | |
CN104680082A (zh) | 一种数据权限访问控制模型 | |
CN104715341A (zh) | 一种权限分配方法及装置 | |
Sandhu et al. | An Oracle implementation of the PRA97 model for permission-role assignment | |
CN108268782A (zh) | 基于角色权限控制的会议机制 | |
Weippl et al. | Content-based Management of Document Access Control. | |
CN112084162B (zh) | 一种基于区块链和ipfs的溯源权限管理系统 | |
Bellettini et al. | Role based access control models | |
Kovin et al. | Information technologies in industrial enterprises production assets management | |
Zhezhnych et al. | An Approach to Multiple Security System Development Using Database Schemas | |
Choi et al. | Modeling of Situation-Middleware for TPO metadata based on Event-Condition-Action Rule | |
CN1365065A (zh) | 动态控制栏位权限的方法及其系统 | |
Sun et al. | Design of authority control service for the two-level comprehensive management system | |
CN1570925A (zh) | 组织架构建立方法与其权限控管方法 | |
Ruan et al. | Data protection in distributed database systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Open date: 20091104 |