基于XACML的受限RBA C框架在Grid Sphere中的实现
2011-04-16程志罗省贤
程志罗省贤
(成都理工大学信息科学与技术学院,四川成都610059)
1.引言
目前大多数系统都以专有的方式实现访问控制和授权,因此不同系统之间很难做到直接交换安全控制信息。而可扩展访问控制标记语言(XACML)旨在提供一种统一的格式来描述访问控制信息,能够很好地解决不同系统之间的交互难题。
XACML是一项由OASIS指导制定的XML规范,其中定义了一个基于XACML的RBAC框架,但是该框架仅定义了核心RBAC和层次RBAC的策略。由于没有对受限RBAC进行定义,因此很难在授权过程中体现最小特权和责任分离原则。为此,本文通过对XACML的RBAC框架的补充,使之能够更好地体现RBAC96模型族的特点,并最终在GridSphere门户中实现了受限RBAC模型。
2.RBAC模型概述
2.1 RBAC96模型族
20世纪90年代期间,大量的专家学者和专门研究单位对RBAC的概念进行了深入研究,先后提出了许多类型的RBAC模型,其中以美国George Mason大学信息安全技术实验室(LIST)提出的RBAC96模型最具有系统性,得到普遍的公认。RBAC96是一个模型族,其中包括RBAC0~RBAC3四个概念性模型[1]:
(1)基本模型RBAC0
RBAC0,即核心RBAC,该模型中包括用户(U)、角色(R)、许可权(P)和会话集合(S)4类实体集合。
(2)角色分级模型RBAC1
RBAC1,即层次RBAC,该模型中的角色是分级的,不同级别的角色有不同的职责与权利,角色的级别形成偏序关系。
(3)受限模型RBAC2
RBAC2模型是在RBAC0模型增加限制后形成的,它与RBAC1并不兼容。主要存在两种限制:互斥角色的限制和角色的基数限制。
2.2 基于XACML的RBAC框架
最新的2.0版XACML标准通过定义4种策略集来帮助实现RBAC核心和层次模型[2]:
(1)角色策略集(RPS)
Role<PolicySet>是一个结合了给定角色的策略集,同时它也包含了对相应角色的权限策略集(PPS)的引用。……
