40
参参参参 RBAC 参参 徐徐徐 2005 徐 10 徐

参数化的 RBAC 模型 徐大伟

  • Upload
    tauret

  • View
    159

  • Download
    0

Embed Size (px)

DESCRIPTION

参数化的 RBAC 模型 徐大伟. 2005 年 10 月. 主要内容. 动机 参数化的 RBAC 模型 有关 P-RBAC 模型的讨论 结论. 1 动机. 基于角色的访问控制 (RBAC) 模型被普遍认为是一种有效的访问控制模型,它比传统的自主访问控制 (DAC) 和强制访问控制 (MAC) 具有更高的灵活性和更好的扩展性。 在实际应用中,随着企业规模以及信息系统规模逐渐扩大,系统中角色的数目也随之急剧增加,从而使得角色管理、用户角色指派、权限角色指派的工作非常繁重且易于出错。. 1 动机. 很多角色具有类似的权限,也赋给了类似的用户。 - PowerPoint PPT Presentation

Citation preview

Page 1: 参数化的 RBAC 模型 徐大伟

参数化的 RBAC模型

徐大伟

2005 年 10 月

Page 2: 参数化的 RBAC 模型 徐大伟

主要内容

动机

参数化的 RBAC 模型

有关 P-RBAC 模型的讨论

结论

Page 3: 参数化的 RBAC 模型 徐大伟

1 动机 基于角色的访问控制 (RBAC) 模型被普遍认为是一

种有效的访问控制模型,它比传统的自主访问控制(DAC) 和强制访问控制 (MAC) 具有更高的灵活性和更好的扩展性。

在实际应用中,随着企业规模以及信息系统规模逐渐扩大,系统中角色的数目也随之急剧增加,从而使得角色管理、用户角色指派、权限角色指派的工作非常繁重且易于出错。

Page 4: 参数化的 RBAC 模型 徐大伟

很多角色具有类似的权限,也赋给了类似的用户。

例如企业中不同分公司的经理角色,它们都具有查看其所属分公司的产品销售报表的权限,这些角色也分别赋给了各个分公司的经理。

1 动机

Page 5: 参数化的 RBAC 模型 徐大伟

1 动机

对于这些角色,可以将影响角色的因素抽象成参数,从而简化角色管理、用户角色指派、权限角色指派的工作。

Page 6: 参数化的 RBAC 模型 徐大伟

2 参数化的 RBAC 模型

2.1 参数化的 RBAC 模型的直观意义

2.2 参数化的 RBAC 模型的形式化定义

2.3 参数化的 RBAC 管理模型 P-ARBAC

Page 7: 参数化的 RBAC 模型 徐大伟

2.1 参数化的 RBAC 模型的直观意义 以为企业管理设计的访问控制系统为例。

企业内部存在诸多机构层次,每个机构层次都有一些部门,每个部门里一般都有一些固定的职务。

机构:总公司、分公司。部门:家电部、彩电部。职务:经理、开发人员、销售人员、普通职员。

Page 8: 参数化的 RBAC 模型 徐大伟

机构、部门和职务的偏序关系如下:

2.1 参数化的 RBAC 模型的直观意义

Page 9: 参数化的 RBAC 模型 徐大伟

如果用 RBAC 基本模型,需要定义 16 个角色。

把机构和部门定义为参数。

这样用参数化的 RBAC 模型,则只需要定义 4

个角色,使得角色的管理很简单。

2.1 参数化的 RBAC 模型的直观意义

Page 10: 参数化的 RBAC 模型 徐大伟

用户角色指派和权限角色指派是通过定义角色实例( Role Instance )来实现的。

一个角色实例是一个角色和一组实例化后的参数组成的有序组。例如:(经理, { 总公司 } , { 彩电部 } )是一个角色实例。

2.1 参数化的 RBAC 模型的直观意义

Page 11: 参数化的 RBAC 模型 徐大伟

2.2 P-RBAC 模型的形式化定义 参数模板( Parameter Template )

Core P-RBAC

Hierarchal P-RBAC

Constrained P-RBAC

Page 12: 参数化的 RBAC 模型 徐大伟

参数模板的定义

Page 13: 参数化的 RBAC 模型 徐大伟

参数模板的定义

Page 14: 参数化的 RBAC 模型 徐大伟

Core P-RBAC 的定义

Page 15: 参数化的 RBAC 模型 徐大伟

Core P-RBAC 的定义

Page 16: 参数化的 RBAC 模型 徐大伟

Core P-RBAC 的定义

Page 17: 参数化的 RBAC 模型 徐大伟

Hierarchal P-RBAC

Page 18: 参数化的 RBAC 模型 徐大伟

Hierarchal P-RBAC

Page 19: 参数化的 RBAC 模型 徐大伟

Constrained P-RBAC

Page 20: 参数化的 RBAC 模型 徐大伟

P-RBAC 模型

Page 21: 参数化的 RBAC 模型 徐大伟

2.3 P-RBAC 管理模型 P-ARBAC 参数化的 RBAC 模型中的参数管理 1 参数的选择 2 参数取值集合中偏序的管理 3 参数的增加和删除

4 参数的基数限制 参数化的 RBAC 模型中的角色管理 P-RRA

参数化的 RBAC 模型中的用户角色指派 P-URA

参数化的 RBAC 模型中的权限角色指派 P-PRA

Page 22: 参数化的 RBAC 模型 徐大伟

参数的选择根据实际应用中的经验,我们给出了 2 条参数的选择条件作为参考。

参数与用户和权限有某种联系。• 用户角色指派和权限角色指派可以实现一定程度的自动化。• 简化用户角色指派和权限角色指派工作,避免出错。

参数的取值在含义上有明显的层次关系,但不能有多重继承。• 使得参数集的偏序关系特殊化,简化角色实例中的偏序关系的判断。• 参数值成树形结构,便于存储和查找。

Page 23: 参数化的 RBAC 模型 徐大伟

参数的选择

Page 24: 参数化的 RBAC 模型 徐大伟

参数取值集合中偏序的管理 由于参数的选择满足上面的条件( 2 ),所

以可以通过参数取值的层次来表示偏序。• 例如对于机构这个参数的管理,我们可以用“ /”

表示总部,“ /HBDQ/” 表示华北大区,“ /HBD

Q/BJFGS/” 表示北京分公司,用“ /” 作为分隔符即可方便的表示偏序。

• 这种结构也很适合在目录服务器中存储。

Page 25: 参数化的 RBAC 模型 徐大伟

参数的增加和删除 增加参数,就在原有参数模板的最后新加一个参数

集,原有角色实例在这个参数上赋空集。 删除参数,在每个角色实例中删除该参数对应的参

数值集合。 ** 由于在 P-RBAC 模型中角色和参数是松耦合的,

所以在实现中,增加和删除参数无需对原有角色实例作任何修改

Page 26: 参数化的 RBAC 模型 徐大伟

参数的基数限制 参数的静态基数限制。

• 我们可以定义实例化角色时在该角色某个参数集上的基数限制。• 可以实现“一个用户不能在多个机构中担任会计”这类限制。• eg :我们可以定义角色“会计”在“机构”这个参数上的静态基数

是 1 。这样(会计, { 北京,上海 } )将是一个非法的角色实例,不会被创建。

参数的动态基数限制。 • 我们可以定义激活角色实例时在该角色某个参数集上的基数限制。• 可以实现“允许一个用户在多个机构中担任会计,但是在一次会话中

只能激活其中的一个”这类限制。

Page 27: 参数化的 RBAC 模型 徐大伟

P-RBAC 模型中的角色管理 P-RRA

P-RBAC 模型中的角色和 RBAC 基本模型中的角色没有,可以采用 RBAC 基本管理模型进行管理,也可以采用各种对RBAC 基本管理模型的扩展来进行扩展的角色管理。

Page 28: 参数化的 RBAC 模型 徐大伟

P-RBAC 中的用户角色指派 P-URA

在对用户指派角色实例时,从用户的信息中提取对应于 P-RBAC 模型中参数的信息,并作为角色实例该参数的默认值。

同时允许管理员进行手工修改,以实现细粒度的管理

Page 29: 参数化的 RBAC 模型 徐大伟

P-RBAC 中的权限角色指派 P-PRA

由于权限和用户的地位是对称的,所以P-PRA 实际上是 P-URA 的对偶模型,同样可以利用参数和权限的联系实现一定程度的自动化。

Page 30: 参数化的 RBAC 模型 徐大伟

3 有关参数化的 RBAC 模型的讨论

引入参数模板的优点

引入参数模板的局限和解决方案

Page 31: 参数化的 RBAC 模型 徐大伟

1. 简化了角色管理工作。 通过引入参数模板,使得角色数目大大减小,

从而使得角色管理的工作大大简化。

在对 TCL 的角色统计中,角色数目由为引入参数模板前的近 9000 个角色减少为几十个角色。

ip

Page 32: 参数化的 RBAC 模型 徐大伟

2.减少用户和权限拥有的角色实例数

假设有个用户 u 同时是北京分公司和天津分公司的经理,则没有引入参数模板之前,需要指派给 u两个角色:北京经理,天津经理。在引入参数模板之后,则 u 只有一个角色实例:(经理, { 北京,天津 } )。这也简化了判断一个会话中用户是否拥有权限的工作。

在 TCL 的权限记录中一个页面的访问权限原来有 1000 多条记录,但是引入参数模板后就简化成了 1 条记录。

Page 33: 参数化的 RBAC 模型 徐大伟

3. 角色实例是基于内容的,方便管理员管理

参数具有一定的含义,且有明显的层次关系,所以角色实例是基于内容( Content-Based )的。

管理员在进行用户角色实例指派和权限角色实例指派时可以充分利用参数的含义,方便管理,减少出错。

Page 34: 参数化的 RBAC 模型 徐大伟

4. P-URA 和 P-PRA 可以实现一定程度自动化

由于参数和用户及权限有一定的联系,所以在进行用户角色实例指派和权限角色实例指派时可以实现自动化,提供管理员默认的参数值,简化管理员的管理工作。

Page 35: 参数化的 RBAC 模型 徐大伟

5. 具有良好的可扩展性

由于我们在 P-RBAC 模型中定义了增加参数和删除参数的操作,当企业业务发生变化或者管理员发现需要增加参数或者减少参数来简化管理时,可以方便的实现,而且不用修改原来的数据。从而提高了系统的适应性和可扩展性。

Page 36: 参数化的 RBAC 模型 徐大伟

局限和解决方案 1. 参数的选择需要仔细考虑,而且需要存储

和管理参数上的偏序

• 对于一个实际系统,应该根据前面提到的参数选择的标准,根据实际需要来确定参数。一般来说,机构,部门等是合适的参数选择。

Page 37: 参数化的 RBAC 模型 徐大伟

局限和解决方案 2. 角色实例的继承关系没有存储,从而在每次访问

控制决策时都要进行偏序判断。• 由于角色数目大大减小,我们可以在角色中存储它所有

的祖先角色和子孙角色,无需对角色偏序进行递归搜索。

• 由于我们的选择的参数有明显的层次关系,所以参数的取值一般会显式的表现出偏序关系。

• 我们引入了缓存机制来提高系统效率。

Page 38: 参数化的 RBAC 模型 徐大伟

4 结论 本文提出了 RBAC 的一种扩展模型—参数化的 RBAC

模型,并给出了参数化的 RBAC 模型的形式化定义。

本文还讨论了参数化的 RBAC 管理模型,并且根据在实际应用中的经验,给出了参数选择和管理的一些建议。

最后对参数化的 RBAC 模型的优缺点进行了讨论。

Page 39: 参数化的 RBAC 模型 徐大伟

4 结论 待完成:

• Constrained P-RBAC 的形式化定义以及在理论和实现上的进一步考虑。

• 相关工作的比较。主要是如何用 P-RBAC 实现几种主要的 RBAC 扩展模型,挖掘 P-RBAC 在表现能力和实际应用中的优势。

Page 40: 参数化的 RBAC 模型 徐大伟

谢谢