RBAC(Role Based Access Control)
访问控制是通过某种途径显示的准许或限制访问能力及范围,从而限制对目标资源
的访问,防止非法用户的侵入或合法用户的不慎操作所造成的破坏[2]。目前流行的访问
控制模型有自主访问控制模型(Discretionary Access Control,DAC)、强制访问控制
模型(Mandatory Access Control, MAC)和基于角色的访问控制模型(Role-Based
Access Control,RBAC)。自主访问控制是访问控制技术中最常见的一种方法,允许资
源的所有者自主地在系统中决定可存取其资源客体的主体,此模型灵活性很高,但安全
级别相对较低;强制访问控制是主体的权限和客体的安全属性都是固定的,由管理员通
过授权决定一个主体对某个客体能否进行访问。无论是DAC 还是MAC 都是主体和访问
权限直接发生关系,根据主体/客体的所属关系或主体/客体的安全级别来决定主体对客
体的访问权,它的优点是管理集中,但其实现工作量大、不便于管理,不适用于主体或
客体经常更新的应用环境。RBAC是一种可扩展的访问控制模型,通过引入角色来对用
户和权限进行解耦,简化了授权操作和安全管理,它是目前公认的解决大型企业的统一
资源访问控制的有效访问方法,其 2 个特征是:(1) 由于角色/权限之间的变化比角色/
用户关系之间的变化相对要慢得多,从而减小授权管理的复杂性,降低管理开销;(2)灵
活地支持企业的安全策略,并对企业变化有很大的伸缩性。
2.2 RBAC 模型的基本思想
在 RBAC 模型中,角色是实现访问控制策略的基本语义实体。系统管理员可以根据
职能或机构的需求策略来创建角色、给角色分配权限并给用户分配角色,用户能够访问
的权限由该用户拥有的角色权限集合决定,即把整个访问控制过程分成
。
RBAC 模型引入了 Role 的概念,目的是为了隔离 User(即动作主体,Subject)与
Privilege(权限,表示对 Resource 的一个操作,即 Operation+Resource) ,当一个
角色被指定给一个用户时,此用户就拥有了该角色所包含的权限。
Role 作为一个用户(User)与权限(Privilege)的代理层,解耦了权限和用户的关系,
所有的授权应该给予 Role 而不是直接给 User 或 Group。
评论0
最新资源