CN101493872A - 基于分类方法的细粒度权限管理方法 - Google Patents

基于分类方法的细粒度权限管理方法 Download PDF

Info

Publication number
CN101493872A
CN101493872A CNA2009100086374A CN200910008637A CN101493872A CN 101493872 A CN101493872 A CN 101493872A CN A2009100086374 A CNA2009100086374 A CN A2009100086374A CN 200910008637 A CN200910008637 A CN 200910008637A CN 101493872 A CN101493872 A CN 101493872A
Authority
CN
China
Prior art keywords
classification
strategy
resource
main body
decision
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
Application number
CNA2009100086374A
Other languages
English (en)
Inventor
汪金保
王磊
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.)
Wang Jinbao
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CNA2009100086374A priority Critical patent/CN101493872A/zh
Publication of CN101493872A publication Critical patent/CN101493872A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种动态智能的主体、资源分类方法,以及基于分类方法的细粒度权限管理方法。主体分类方法,是一种动态、智能分类方法,是通过对主体、主体属性、上下文、数据源进行各种运算来实现的。对于给定主体,只要运算规则,就可判断主体是否属于该分类。资源分类方法和主体分类方法非常类似,资源分类方法还可以对资源、资源属性进行运算。细粒度授权决策方法和细粒度授权查询方法,都运用于权限管理领域。细粒度授权决策方法,基于主体分类、资源分类,定义授权决策策略。当某主体请求对某资源进行操作时,评估策略,允许或者拒绝请求。如果拒绝请求,并返回拒绝理由。细粒度授权查询方法,基于主体分类、数据查询模板,定义授权查询策略。当某主体请求进行某查询时,评估策略,返回查询结果。这种基于分类的授权策略,具有简单、复用性强和易于实施等特点。

Description

基于分类方法的细粒度权限管理方法
1.技术领域
主体分类方法和资源分类方法,是一种动态、智能分类方法。可以运用于权限管理、身份认证等领域。基于分类方法的细粒度授权决策方法和细粒度授权查询方法,运用于计算机软件***权限管理领域。管理主体对资源的访问权限,管理主体对资源的查询权限。
2.背景技术
计算机***,尤其是网络***,资源放在一起集中共享,这些资源可以是图片、数据库、文本、计算机等。当用户请求对某资源进行操作,为了确保***安全正常运行,***将对用户和资源进行权限判断,确保该用户对该资源有操作权限,否则拒绝用户请求。
权限管理,就是管理用户对资源的操作权限。目前应用最广泛的有两种技术方法:
1.基于角色的访问控制授权方法;
2.XACML(OASIS eXtensible Access Control Markup Language)。
基于角色的访问控制授权方法,先创建角色,然后授权该角色有权限访问的资源;将一个或者多个角色授权给用户。当用户访问某资源时,首先查找该用户有哪些角色,查找出这些角色对应的授权资源。如果授权资源里面有被访问资源,则允许用户请求;否则拒绝用户请求。比如创建管理员角色,授权管理员角色允许访问“添加机构”、“删除机构”网页资源权限。然后给用户张三授予管理员角色。当张三访问“添加机构”时,***将允许该请求。当张三访问“添加用户”时,因为张三具备的角色都没用被授予“添加用户”权限,***将拒绝该请求。
基于角色的访问控制授权方法是一种粗粒度的权限控制方法。对于细化的需求,基于角色的访问控制则无能为力。
比如在某银行***中,有总行用户张三和北京分行用户李四,现有访问控制需求:
1.总行管理员只能添加各个分行机构,不能添加支行机构
2.北京分行管理员只能添加北京分行下属支行,不能添加分行机构,且不能添加其他分行支行机构。
对于以上需求,基于角色的访问控制只能授予张三和李四管理员角色,赋予该角色添加机构的权限。但无法根据机构的不同层级的属性进一步授权,所以无法实现此类细粒度的访问控制。
XACML是OASIS的一个标准。XACML定义了一种通用的用于保护资源的策略语言和一种访问决策语言。
典型的访问控制和授权场景包括三个主要实体:主体(Subject)、资源(Resource)和动作(Action)以及它们的属性。主体请求得到对资源执行动作的权限。比如在访问请求“客户请求查看自己的订单”中,主体是“客户”,资源是“自己的订单”,动作是“查看”。
XACML的授权由策略(Policy)实现。策略中定义若干规则(Rule),规则指定允许或拒绝请求的条件。当主体请求访问资源时,XACML引擎会选择匹配的策略,评估与策略关联的规则。评估过程中,引擎会根据规则的定义对主体、资源以及运行环境(Environment)的属性进行计算和评估,最终做出允许或拒绝请求的决策。其步骤如图1。
由于XACML的规则支持对主体、资源以及环境的属性进行复杂计算与评估,所以具备了进行细粒度访问控制的能力。例如对于细粒度授权“分行管理员添加下属支行机构”,XACML需要创建一条授权策略。该策略包含的规则为:
1.主体为拥有“管理员”角色,且所属机构为分行;
2.资源为支行机构,且隶属于主体的分行;
3.动作为添加分支机构。
以上条件满足时,决策的结果为允许,反之拒绝。
在该规则中,参与评估的主体属性有“所拥有的角色”和“所属机构”;资源属性为“支行机构”和“隶属于主体分行”。
XACML其核心是为授权策略定义规则,在规则中对主体,资源和环境属性进行评估,根据评估结果做出访问控制决策(允许或拒绝)。目前IBM Tivoli Access Manager和OracleEntitlement Server都是采用这种思路来实现细粒度访问控制。
该方法并不完善,有以下两个缺点:
1.重用性不强
策略包含若干规则,不同的策略经常有类似的规则,但不完全相同。例如以下两个策略:
策略1:分行管理员添加下属支行机构。规则:主体的角色为管理员,且所属机构为分行;资源为支行机构,且隶属于主体的分行。
策略2:分行管理员添加分行用户。主体的角色为管理员,且所属机构为分行;资源为用户,且与主体属于同一分行。
策略1和策略2的规则中都包含了对主体的限制条件:主体的角色为管理员,且所属机构为分行。
2.不支持资源查询
对于“分行管理员有权修改下属支行机构”这一访问控制,XACML可以判断某管理员是否能够修改某支行机构,但不能返回该管理员有权修改的所有支行机构。因为XACML只能返回授权策略决策结果,即允许或拒绝,而不能进行资源查询,返回满足策略规则的资源集合。而在实际的应用***中,这种需求是随处可见的。XACML还不支持这类查询需求。其实用性受到限制。
3.发明内容
本发明包含两大主题:
1.基于主体分类和资源分类的细粒度授权决策方法;
2.基于主体分类和数据查询的细粒度授权查询方法。
以上主题运用了主体分类方法、资源分类方法和数据查询方法。主体分类方法和资源分类方法隶属本发明。数据查询方法,是一种常见方法,不隶属本发明。
主体分类方法:定义主体的分类规则,直接对给定主体的属性进行评估,从而判断主体是否属于该分类,而不用事先显示地将主体划入某分类。主体分类规则的特征是由表达式或表达式组组成,并返回布尔值。表达式可以是数学计算(+,-,*,/)、逻辑计算(AND,OR)和函数等。表达式的特征是对主体的属性、上下文属性或其他数据源数据的计算。主体、上下文环境和数据源都是规则的输入参数。
资源分类方法:定义资源的分类规则,直接对给定资源和给定主体(给定主体可选)的属性进行评估,从而判断资源是否属于该分类,而不用事先显示地将资源划入某分类。
资源分类方法与主体分类方法基本类似,主要有一个显著区别:资源分类输入参数为:资源、主体、上下文环境和数据源。而主体分类的输入参数没有资源。资源分类方法的主体输入参数是可选的。
资源分类规则、表达式、表达式取值和主体分类一致,不再重复。
数据查询方法:定制查询模板,在运行的时候,对模板中的占位符赋值,形成完整SQL语句,然后进行数据库查询。
数据查询方法是一种常见方法。运用于细粒度权限管理领域,数据查询占位符代表的数据,可以来自上下文、主体、资源或者数据源。
细粒度授权决策,为不同请求主体设置不同资源操作权限。对给定主体、给定资源,***能够通过计算,做出决策,允许或者拒绝该请求。
基于主体分类和资源分类的细粒度授权决策方法,是一种简单、直观和实用的细粒度授权决策方法。本方法为每个操作设定一条或者多条授权决策策略。如果有多条策略,策略按照优先级排序。当某主体请求对某资源进行操作时,评估为该操作设置的授权决策策略,得出决策结果。决策结果有两种情况:1,允许;2,拒绝,并返回拒绝理由。
细粒度授权决策方法,判断请求主体是否对请求资源具有操作权限,但不能告诉请求主体具有权限操作的资源有哪些。细粒度授权查询方法,是用来查询出请求主体对哪些资源具有操作权限。细粒度授权查询方法,
基于主体分类和数据查询的细粒度授权查询方法,解决了XACML等以往权限管理领域未涉及到的领域。本方法为每个操作设定一条或者多条授权查询策略。如果有多条策略,策略按照优先级排序。对给定主体,***能够通过计算,选择匹配的查询器,进行资源查询。其查询结果即请求主体具有权限操作的资源集合。
4.附图说明
附图1是XACML工作原理图。
附图2是细粒度授权决策方法,决策过程示意图。
附图3是细粒度授权决策方法,所有策略不满足时,评估拒绝理由示意图。
附图4是细粒度授权查询方法,查询过程示意图。
5.具体实施方式
5.1.主体分类方法
主体分类方法:定义主体的分类规则,直接对给定主体的属性进行评估,从而判断主体是否属于该分类,而不用事先显示地将主体划入某分类。主体分类主要特征是:
1.动态匹配计算。通过评估规则判断主体是否属于该分类,而不用事先将主体划入分类,为细粒度授权提供了前提条件。
2.具有更好的复用性、可读性。XACML的主体判断规则和资源判断规则混合在一起。通过将主体判断规则提取出来,形成独立分类,这种分类与业务领域中的概念一致,具有很好的稳定性,可以在不同业务操作中复用。分类目的性和可读性更强。
主体分类规则的特征是由表达式或表达式组组成,并返回布尔值。表达式可以是数学计算(+,-,*,/)、逻辑计算(AND,OR)和函数等。表达式举例:
  //数学计算int a=b+1;//逻辑计算boolean f=(a&&b)&&(c||d)&&e;//函数c=a.add(b.getValue());
表达式的特征是对主体的属性、上下文属性或其他数据源数据的计算。主体、上下文环境和数据源都是规则的输入参数。表达式获取值举例:
  //主体的属性String organization=(String)SUBJECT.get(“organization”);//上下文属性Double money=(Double)CONTEXT.get(“money”);//执行SQL查询Collection queryResult=DATASOURCE.query(“select column1,column2 from tablename”);
将主体、上下文环境和数据源做为输入参数,执行规则的表达式或表达式组,执行结果就是评估结果。
主体分类实施例1:
  名称   规则   描述
  总行用户   String            organization     =SUBJECT.get(“organization”);return organization.equals(“总行”);   取出主体(用户)的organization属性值,然后和总行机构名称”总行”进行比较。相等表示属于总行用户分类,否则不是。
  分行用户   Collection branches=DATASOURCE.query(“select name from   查询organization表所有分行机构(父机构是”总行”),然
  organizationwhere parent=’总行’“);String    organization      =  SUBJECT.get(“organization”);return branches.contains(organization);   后比较主体的机构是否在分行机构中。如果在,表示属于分行用户分类,否则不是。
5.2.资源分类方法
资源分类方法:定义资源的分类规则,直接对给定资源和给定主体(给定主体可选)的属性进行评估,从而判断资源是否属于该分类,而不用事先显示地将资源划入某分类。
资源分类方法与主体分类方法基本类似,主要有一个显著区别:资源分类输入参数为:资源、主体、上下文环境和数据源。而主体分类的输入参数没有资源。
资源分类规则、表达式、表达式取值和主体分类一致,不再重复。
资源分类实施例1:
  名称   规则   描述
  分行机构   String parent=RESOURCE.get(“parent”);return parent.equals(”总行”);   取出资源的parent属性值,然后查看该机构是否为总行。如果是,表示属于该分类,否则不是。
  当前主体的下属支行机构   Collection branches=DATASOURCE.query(“select name fromorganizationwhere parent=’总行’“);String    organization    =SUBJECT.get(“organization”);String parent=RESOUCE.get(“parent”);return branches.contains(organization)&&parent.equals(organization);   取出请求主体的organization属性值,取出机构表中所有分行机构,取出资源的parent属性值。如果organization是分行机构,且parent和organization相等,表示属于该分类,否则不是。
5.3.数据查询方法
在不同场景,但查询语句非常类似的情况下,我们定制查询模板。在运行的时候,对模板中的占位符赋值,形成完整SQL语句,然后进行数据库查询。
运用于细粒度权限管理领域,数据查询占位符代表的数据,可以来自上下文、主体、资源或者数据源。
5.4.细粒度授权决策方法
基于主体分类和资源分类的细粒度授权决策方法,是一种简单、直观和实用的细粒度授权决策方法。
细粒度授权决策,为不同请求主体设置不同资源操作权限。对给定主体、给定资源,***能够通过计算,做出决策,允许或者拒绝该请求。
本方法为每个操作设定一条或者多条授权决策策略。如果有多条策略,策略按照优先级排序。
授权决策策略包括:
1.主体分类,描述什么样的主体;
2.资源分类,描述什么样的资源;
3.授权关系:允许或拒绝;
4.拒绝理由。
本方法工作原理是:当某个主体请求对某个资源进行操作时:
1.按照优先级顺序列出为本操作设置的授权决策策略,依次评估授权决策策略;
2.评估当前授权决策策略,如果请求主体满足该策略的主体分类规则,且请求资源满足该策略的资源分类规则,则该策略得出决策结果;否则该策略视为不能得出决策结果;
3.如果决策结果是允许,直接返回允许,不再评估下一条策略;如果决策结果是拒绝,直接返回拒绝,返回的拒绝理由就是当前策略的拒绝理由,也不再评估下一条策略;如果没有得出决策结果,返回到步骤2评估下一条策略,直到没有策略可供评估为止;
4.如果所有策略评估完毕,都不能得出决策结果,将拒绝做为决策结果,并评估出拒绝理由,然后返回拒绝理由。评估拒绝理由由以下步骤组成:
a)按照优先级顺序列出为本操作设置的授权决策策略,依次评估授权决策策略;
b)评估当前授权决策策略,如果请求主体满足该策略的主体分类规则,则选中该策略的拒绝理由;
c)返回到步骤b评估下一条策略,直到没有策略可供评估为止;
d)返回的拒绝理由就是所有选中的拒绝理由,返回的拒绝理由可能是0条、1条或者多条。
下面举例说明本方法的有效性。
细粒度授权决策方法实施例1:
某银行管理***,维护机构操作。细粒度权限控制要求是:
1.总行用户,可以维护所有分行机构,但不能维护分行下属支行机构;
2.分行用户,可以维护本分行下属支行机构,不能维护其他任意机构,比如其他分行下属支行,本分行机构等。
运用本细粒度授权决策方法,为维护机构操作,设置如下授权决策策略:
  优先级   主体分类   资源分类   授权关系   拒绝理由
  1   总行用户   分行机构   允许   总行用户只能维护分行机构
  2   分行用户   本分行下属支行   允许   分行用户只能维护本分行下属支行
备注:
1.总行用户(主体分类),规则是:请求主体的机构等于总行机构;
2.分行用户(主体分类),规则是:请求主体的机构属于机构表中的查询出来的分行机构集合;
3.分行机构(资源分类),规则是:请求资源的父机构等于总行机构;
4.本分行下属支行(资源分类),规则是:请求资源的父机构等于请求主体的机构,且请求主体的机构是分行机构。
下面考察如下输入,决策结果如何:
  输入   决策结果   说明
  请求主体:总行用户张三请求资源:北京分行分行机构   允许   请求主体和请求资源满足优先级1的授权决策策略,返回该规则的授权关系
  请求主体:总行用户张三请求资源:北京分行下属东单支行   拒绝。拒绝理由:总行用户只能维护分行机构   请求主体和请求资源不满足任何授权决策策略。但请求主体只满足优先级1的主体分类,因此该规则的拒绝理由,做为拒绝理由返回。
  请求主体:北京分行用户李四请求资源:北京分行下属东单支行   允许   请求主体和请求资源满足优先级2的授权决策策略,返回该规则的授权关系
  请求主体:北京分行用户李四请求资源:上海分行下属浦东支行   拒绝。拒绝理由:分行用户只能维护本分行下属支行   请求主体和请求资源不满足任何授权决策策略。但请求主体只满足优先级2的主体分类,因此该规则的拒绝理由,做为拒绝理由返回。
细粒度授权决策方法实施例2:
某企业客户关系***,维护客户操作。细粒度权限控制要求是:
1.普通销售人员,维护自己开发的客户;
2.销售部部门经理,维护所有客户;
3.被公司管理员列入黑名单的用户,不能维护任何客户。
运用本细粒度授权决策方法,为维护客户操作,设置如下授权决策策略:
  优先级   主体分类   资源分类   授权关系   拒绝理由
  1   黑名单用户   所有客户   拒绝   黑名单用户不允许维护任何客户
  2   普通销售人员   自己开发的客户   允许   普通销售人员只能维护自己开发的客户
  3   销售部部门经理   所有客户   允许
备注:
1.黑名单用户(主体分类),规则是:请求主体的ID属性属于黑名单表中查询出来的ID集合;
2.普通销售人员(主体分类),规则是:请求主体的机构属性是“销售部”,且请求主体的部门经理属性等于“否”;
3.销售部部门经理(主体分类),规则是:请求主体的机构属性是“销售部”,且请求主体的部门经理属性等于“是”;
4.所有客户(资源分类),规则是:不做任何判断直接返回true;
5.自己开发的客户(资源分类),规则是:请求资源的客户代表ID属性等于请求主体的ID属性。
下面考察如下输入,决策结果如何:
  输入   决策结果   说明
  请求主体:黑名单用户张三请求资源:张三开发的客户ABC   拒绝   请求主体和请求资源满足优先级1的授权决策策略,返回该规则的授权关系
  请求主体:普通销售人员李四请求资源:张三开发的客户ABC   拒绝。拒绝理由:普通销售人员只能维护自己开发的客户   请求主体和请求资源不满足任何授权决策策略。但请求主体只满足优先级2的主体分类,因此该规则的拒绝理由,做为拒绝理由返回。
  请求主体:普通销售人员李四请求资源:李四开发的客户EFG   允许   请求主体和请求资源满足优先级2的授权决策策略,返回该规则的授权关系
  请求主体:销售部部门经理王五请求资源:李四开发的客户EFG   允许   请求主体和请求资源满足优先级3的授权决策策略,返回该规则的授权关系
基于主体分类和资源分类的细粒度授权决策方法,主要特征是:
1.基于主体分类方法和资源分类方法,直接描述出什么样的主体对什么样的资源,具有怎样的操作权限;
2.提供了一种较XACML更直观、更实用、更简便的细粒度控制方法;
3.主体分类、资源分类是业务域概念,因此主体分类、资源分类定义可以在授权决策策略中复用,提高了管理效率。
5.5.细粒度授权查询方法
细粒度授权决策方法,判断请求主体是否对请求资源具有操作权限,但不能告诉请求主体具有权限操作的资源有哪些。细粒度授权查询方法,是用来查询出请求主体对哪些资源具有操作权限。
基于主体分类和数据查询的细粒度授权查询方法,为不同请求主体设置数据查询器。数据查询器,可由本文5.3所描述的数据查询方法实现。对给定主体,***能够通过计算,选择匹配的查询器,进行资源查询。其查询结果即请求主体具有权限操作的资源集合。
本方法为每个操作设定一条或者多条授权查询策略。如果有多条策略,策略按照优先级排序。
授权查询策略包括:
1.主体分类,描述什么样的主体;
2.数据查询器,描述查询哪些资源。
本方法工作原理是:当某个主体请求查询操作时:
1.按照优先级顺序列出为本操作设置的授权查询策略,依次评估授权查询策略;
2.评估当前授权查询策略,如果请求主体满足该策略的主体分类规则,执行该策略的查询模板得到查询结果;
3.如果当前授权查询策略评估,得出查询结果,那么不必评估下一条策略;否则视为不能得出查询结果,发挥到步骤2评估下一条策略,直到没有策略可供评估为止;
4.如果所有策略评估完毕,都不能得出查询结果,返回空集合,即该请求主体没有查询数据权限。
下面举例说明本方法的有效性。
细粒度授权查询方法实施例1:
某银行管理***,查询机构操作。细粒度权限控制要求是:
1.总行用户,可以查询所有机构;
2.分行用户,可以查询本分行机构及本分行下属支行机构。
运用本细粒度授权决策方法,为查询机构操作,设置如下授权查询策略:
  优先级   主体分类   数据查询器
  1   总行用户   查询机构表所有数据
  2   分行用户   查询机构表本分行及本分行下属支行数据
备注:
1.总行用户(主体分类),规则是:请求主体的机构等于总行机构;
2.分行用户(主体分类),规则是:请求主体的机构属于机构表中的查询出来的分行机构集合;
3.查询机构表所有数据(数据查询器),规则是:查询机构表所有数据;
4.查询机构表本分行及本分行下属支行数据(数据查询器),规则是:查询机构表数据,查询条件是机构号等于请求主体机构号,或者父机构号等于请求主体机构号。
下面考察如下输入,查询结果如何:
  输入   查询结果   说明
  请求主体:总行用户张三   机构表所有机构数据   请求主体满足优先级1的授权查询策略的主体分类,执行该规则的数据查询器,返回机构表所有数据
  请求主体:北京分行用户李四   北京分行及北京分行下属支行数据   请求主体满足优先级2的授权查询策略的主体分类,执行该规则的数据查询器,返回北京分行及北京分行下属支行数据
  请求主体:上海分行用户王   上海分行及上海分行下属支   请求主体满足优先级2的授
  五   行数据   权查询策略的主体分类,执行该规则的数据查询器,返回上海分行及上海分行下属支行数据
细粒度授权查询方法实施例2:
某企业客户关系***,查询客户操作。细粒度权限控制要求是:
1.普通销售人员,查询自己开发的客户;
2.销售部部门经理,查询所有客户;
3.被公司管理员列入黑名单的用户,不能查询任何客户。
运用本细粒度授权决策方法,为维护客户操作,设置如下授权查询策略:
  优先级   主体分类   数据查询器
  1   黑名单用户   不查询任何客户
  2   普通销售人员   查询客户表销售人员开发的客户
  3   销售部部门经理   查询客户表所有客户
备注:
1.黑名单用户(主体分类),规则是:请求主体的ID属性属于黑名单表中查询出来的ID集合;
2.普通销售人员(主体分类),规则是:请求主体的机构属性是“销售部”,且请求主体的部门经理属性等于“否”;
3.销售部部门经理(主体分类),规则是:请求主体的机构属性是“销售部”,且请求主体的部门经理属性等于“是”;
4.不查询任何客户(数据查询器),规则是:查询客户表,查询条件是1=2。即查询结果总是空。
5.查询客户表销售人员开发的客户(数据查询器),规则是:查询客户表,查询条件是客户代表ID等于请求主体ID属性;
6.查询客户表所有客户(数据查询器),规则是:查询客户表所有数据。
下面考察如下输入,查询结果如何:
  输入   查询结果   说明
  请求主体:黑名单用户张三   空集合   请求主体满足优先级1的授权查询策略的主体分类规则,执行该分类的数据查询器,返回空集合
  请求主体:普通销售人员李四   客户表,客户代表ID号等于李四ID的客户   请求主体满足优先级2的授权查询策略的主体分类规则,执行该分类的数据查询器,返回李四开发的客户
  请求主体:普通销售人员赵六   客户表,客户代表ID等于赵六ID的客户   请求主体满足优先级2的授权查询策略的主体分类规则,执行该分类的数据查询器,返回赵六开发的客户
  请求主体:销售部部门经理王五   客户表,所有客户   请求主体满足优先级3的授权查询策略的主体分类规则,执行该分类的数据查询器,返回所有客户
基于主体分类和数据查询的细粒度授权查询方法,主要特征是:
1.基于主体分类方法和数据查询方法,直接描述出什么样的主体对哪些资源具有查询权限;
2.解决了XACML等以往权限管理领域未涉及到的领域;
3.主体分类、数据查询器是业务域概念,因此主体分类、数据查询器定义可以在授权查询策略中复用,提高了管理效率。

Claims (12)

1.一种主体分类方法,其特征是将给定主体做为输入参数,通过运算主体分类的分类规则,判断该主体是否属于该分类,而不用事先显式地对主体进行分类,主要由以下步骤组成:
a)创建主体分类,定义分类规则;
b)将给定主体做为输入参数,运算主体分类的分类规则;
c)得出布尔值的运算结果,该布尔值表示该主体是否属于该主体分类。
2.根据权利要求1所述的主体分类方法,其特征是所述分类规则由表达式或者表达式组组成,并返回所述布尔值。
3.根据权利要求2所述的主体分类方法,其特征是所述表达式可以对主体、主体属性、上下文、数据源进行运算。
4.一种资源分类方法,其特征将给定资源和请求该资源的请求主体做为输入参数,通过运算资源分类的分类规则,判断该资源是否属于该分类,而不用事先显式地对资源进行分类,主要由以下步骤组成:
a)创建资源分类,定义分类规则;
b)将给定资源和请求该资源的请求主体做为输入参数,运算资源分类的分类规则;
c)得出布尔值的运算结果,该布尔值表示该资源是否属于该资源分类。
5.根据权利要求4所述的资源分类方法,其特征是所述分类规则由表达式或者表达式组组成,并返回布尔值。
6.根据权利要求5所述的资源分类方法,其特征是所述表达式可以对资源、资源属性、主体、主体属性、上下文、数据源进行运算。
7.根据权利要求4所述的资源分类方法,其特征是所述请求该资源的请求主体,是可选输入参数。
8.一种基于主体分类和资源分类的细粒度授权决策方法,主要由以下步骤组成:
a)创建一个或者多个主体分类,为每个主体分类定义分类规则;
b)创建一个或者多个资源分类,为每个资源分类定义分类规则;
c)创建授权决策策略,该策略包括主体分类、资源分类、授权关系、拒绝理由4个要素;
d)对给定操作设置一条授权决策策略或者一组授权决策策略,如果是一组策略,对策略设置优先级顺序;
e)当某主体请求对某资源进行操作时,选取该操作对应的授权决策策略或者一组授权决策策略进行评估,得出决策结果,根据决策结果,允许或者拒绝请求,如果拒绝请求,并返回拒绝理由。
9.根据权利要求8所述的细粒度授权决策方法,其特征是所述评估授权决策策略由以下步骤组成:
a)按照优先级顺序列出为本操作设置的授权决策策略,依次评估授权决策策略;
b)评估当前授权决策策略,如果请求主体满足该策略的主体分类规则,且请求资源满足该策略的资源分类规则,则该策略得出决策结果;否则该策略视为不能得出决策结果;
c)如果决策结果是允许,直接返回允许,不再评估下一条策略;如果决策结果是拒绝,直接返回拒绝,返回的拒绝理由就是当前策略的拒绝理由,也不再评估下一条策略;如果没有得出决策结果,返回到步骤b评估下一条策略,直到没有策略可供评估为止;
d)如果所有策略评估完毕,都不能得出决策结果,将拒绝做为决策结果,并评估出拒绝理由,然后返回拒绝理由。
10.根据权利要求9所述的细粒度授权决策方法,其特征是所述所有策略评估完毕,都不能得出决策结果时,评估出返回拒绝理由由以下步骤组成:
a)按照优先级顺序列出为本操作设置的授权决策策略,依次评估授权决策策略;
b)评估当前授权决策策略,如果请求主体满足该策略的主体分类规则,则选中该策略的拒绝理由;
c)返回到步骤b评估下一条策略,直到没有策略可供评估为止;
d)返回的拒绝理由就是所有选中的拒绝理由,返回的拒绝理由可能是0条、1条或者多条。
11.一种基于主体分类和数据查询技术的细粒度授权查询方法,主要由以下步骤组成:
a)创建一个或者多个主体分类,为每个主体分类定义分类规则;
b)创建一个或者多个数据查询模板;
c)创建授权查询策略,该策略包括主体分类、数据查询模板2个要素;
d)对给定查询操作设置一个授权查询策略或者一组授权查询策略,如果是一组策略,对策略设置优先级次序;
e)当某主体请求执行某查询操作时,选取该操作对应的授权查询策略或者一组授权查询策略进行评估,获得查询结果,返回查询结果。
12.根据权利要求11所述的细粒度授权查询方法,其特征是所述的授权查询策略评估由以下步骤组成:
a)按照优先级顺序列出为本操作设置的授权查询策略,依次评估授权查询策略;
b)评估当前授权查询策略,如果请求主体满足该策略的主体分类规则,执行该策略的查询模板得到查询结果;
c)如果当前授权查询策略评估,得出查询结果,那么不必评估下一条策略;否则视为不能得出查询结果,发挥到步骤b评估下一条策略,直到没有策略可供评估为止;
d)如果所有策略评估完毕,都不能得出查询结果,返回空集合,即该请求主体没有查询数据权限。
CNA2009100086374A 2009-02-09 2009-02-09 基于分类方法的细粒度权限管理方法 Pending CN101493872A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNA2009100086374A CN101493872A (zh) 2009-02-09 2009-02-09 基于分类方法的细粒度权限管理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNA2009100086374A CN101493872A (zh) 2009-02-09 2009-02-09 基于分类方法的细粒度权限管理方法

Publications (1)

Publication Number Publication Date
CN101493872A true CN101493872A (zh) 2009-07-29

Family

ID=40924464

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2009100086374A Pending CN101493872A (zh) 2009-02-09 2009-02-09 基于分类方法的细粒度权限管理方法

Country Status (1)

Country Link
CN (1) CN101493872A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831123A (zh) * 2011-06-16 2012-12-19 航天信息股份有限公司 一种用于查询数据的权限控制方法和***
CN103093140A (zh) * 2011-10-31 2013-05-08 腾讯科技(深圳)有限公司 权限管理方法及***
CN104008142A (zh) * 2014-05-09 2014-08-27 北京航空航天大学 面向社交网络的数据保护方法及***
CN104537316A (zh) * 2014-12-30 2015-04-22 深圳市科漫达智能管理科技有限公司 一种基于功能权限的数据授权方法及装置
CN109104412A (zh) * 2018-07-13 2018-12-28 万翼科技有限公司 账户权限管理方法、管理***及计算机可读存储介质
CN113032745A (zh) * 2021-03-19 2021-06-25 上海依图网络科技有限公司 权限管理设备及其权限管理方法和介质
CN114721788A (zh) * 2021-01-05 2022-07-08 ***通信有限公司研究院 策略管理方法及装置
CN114844702A (zh) * 2022-05-05 2022-08-02 南京航空航天大学 基于策略审查和授权扩展的访问控制方法
CN117725441A (zh) * 2023-12-21 2024-03-19 北京火山引擎科技有限公司 权限管理方法、装置、可读存储介质及电子设备

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831123A (zh) * 2011-06-16 2012-12-19 航天信息股份有限公司 一种用于查询数据的权限控制方法和***
CN102831123B (zh) * 2011-06-16 2015-04-08 航天信息股份有限公司 一种用于查询数据的权限控制方法和***
CN103093140B (zh) * 2011-10-31 2015-11-25 腾讯科技(深圳)有限公司 权限管理方法及***
CN103093140A (zh) * 2011-10-31 2013-05-08 腾讯科技(深圳)有限公司 权限管理方法及***
CN104008142B (zh) * 2014-05-09 2017-06-06 北京航空航天大学 面向社交网络的数据保护方法及***
CN104008142A (zh) * 2014-05-09 2014-08-27 北京航空航天大学 面向社交网络的数据保护方法及***
CN104537316A (zh) * 2014-12-30 2015-04-22 深圳市科漫达智能管理科技有限公司 一种基于功能权限的数据授权方法及装置
CN109104412A (zh) * 2018-07-13 2018-12-28 万翼科技有限公司 账户权限管理方法、管理***及计算机可读存储介质
CN109104412B (zh) * 2018-07-13 2021-10-26 万翼科技有限公司 账户权限管理方法、管理***及计算机可读存储介质
CN114721788A (zh) * 2021-01-05 2022-07-08 ***通信有限公司研究院 策略管理方法及装置
CN113032745A (zh) * 2021-03-19 2021-06-25 上海依图网络科技有限公司 权限管理设备及其权限管理方法和介质
CN114844702A (zh) * 2022-05-05 2022-08-02 南京航空航天大学 基于策略审查和授权扩展的访问控制方法
CN117725441A (zh) * 2023-12-21 2024-03-19 北京火山引擎科技有限公司 权限管理方法、装置、可读存储介质及电子设备

Similar Documents

Publication Publication Date Title
CN101493872A (zh) 基于分类方法的细粒度权限管理方法
CN103078859B (zh) 业务***权限管理方法、设备及***
CN102341809B (zh) 分布式文件***访问
US8370388B2 (en) Mandatory access control list for managed content
CN102968501B (zh) 一种通用的全文搜索方法
EP2405607B1 (en) Privilege management system and method based on object
CN102307185B (zh) 适用于存储云内的数据隔离方法
US20080005115A1 (en) Methods and apparatus for scoped role-based access control
US20050193221A1 (en) Information processing apparatus, information processing method, computer-readable medium having information processing program embodied therein, and resource management apparatus
WO2016169324A1 (zh) 一种云计算数据中心访问管理方法和云计算数据中心
US8719903B1 (en) Dynamic access control list for managed content
US10432642B2 (en) Secure data corridors for data feeds
WO2006022739A2 (en) Method and system for processing grammar-based legality expressions
De Capitani di Vimercati et al. Private data indexes for selective access to outsourced data
US8875222B1 (en) Efficient XACML access control processing
Ruan et al. LedgerView: access-control views on hyperledger fabric
EP4214899B1 (en) Scenario-based access control
Yoon et al. Blockchain-based object name service with tokenized authority
Idar et al. Dynamic data sensitivity access control in Hadoop platform
Cai et al. Distributed management of permission for access control model
US10432641B2 (en) Secure data corridors
CN104994086A (zh) 一种数据库集群权限的控制方法及装置
Shastri et al. Efficient and effective security model for database specially designed to avoid internal threats
JP4723930B2 (ja) 複合的アクセス認可方法及び装置
CN110427770A (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
C57 Notification of unclear or unknown address
DD01 Delivery of document by public notice

Addressee: Wang Jinbao

Document name: Notice of application for publication of patent for invention and entry into the substantive examination procedure

ASS Succession or assignment of patent right

Free format text: FORMER OWNER: WANG LEI

C41 Transfer of patent application or patent right or utility model
C53 Correction of patent for invention or patent application
CB03 Change of inventor or designer information

Inventor after: Wang Jinbao

Inventor before: Wang Jinbao

Inventor before: Wang Lei

COR Change of bibliographic data

Free format text: CORRECT: INVENTOR; FROM: WANG JINBAO WANG LEI TO: WANG JINBAO

TA01 Transfer of patent application right

Effective date of registration: 20100607

Address after: 102208 Beijing city Changping District Huilongguan dragon Jinyuan 2 District 4 Building 5 unit 601 room

Applicant after: Wang Jinbao

Address before: 102208 Beijing city Changping District Huilongguan dragon Jinyuan 2 District 4 Building 5 unit 601 room

Applicant before: Wang Jinbao

Co-applicant before: Wang Lei

DD01 Delivery of document by public notice

Addressee: Wang Jinbao

Document name: Notification of Passing Examination on Formalities

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20090729