RBAC(rolebaseaccesscontrol)是什么?
在商业组织中不同角色有着不同的权限和职责.商业应用中使用基于用户角色的的有限访问控制可以追溯到上世纪70年代。在这时候的基于角色访问的系统相对简单并且没统一的标准和模型.
1972年FerraioloandKuhn提出了一个统一的模型.这个模型需要三个基本原则。
1:角色分配:用户必须分配角色
2:角色授权:给角色分配权限
3:业务授权:业务操作只可通过角色,不得直接授权给用户
这个模型关键点是要通过角色访问全部的内容.。而角色本质上是一个权限集合。用户通过角色或角色继承分配权限。在一个组织中,角色是相对稳定的,而用户和权限都是易变的。通过角色控制所有访问可以简化了管理和访问控制。
1960年Sandhu,Coyne,Feinstein,andYouman定义了RBAC0模型,
RBAC0作为基础模型,三要素:用户,角色,权限。
RBAC1包括了RBAC并且添加了角色继承。
RBAC2也包括RBAC0并且添加了约束。RBAC1和RBAC2相互独立.
RBAC3是一个全功能的RBAC,RBAC3合并了RBAC0,RBAC1,RBAC2.
组和角色的不同?
组是用户的集合,不能被直接授权,要通过角色分配权限.
RBAC,MAC,DAC的关系?
RBAC可以模拟MAC和DAC,如果RBAC实现了ROLE继承,那么MAC可以实现RBAC。