RBAC一共提供了4套模型,RBAC0、RBAC1、RBAC2、RBAC3。RBAC0是属于基本模型,比传统的数据访问控制增加了灵活性。RBAC1引入了角色继承的概念,角色间的关系可以分为一般继承关系和受限继承关系。RBAC2添加了责任分离的关系,责任分离包括了静态责任分离和动态责任分离。RBAC3是一套统一模型,既提供了角色继承关系,又提供了责任分离关系。
事实上,RBAC认为权限授权实际上是Who、What、How的问题。在RBAC模型中,who、what、how构成了访问权限三元组,也就是"Who对What(Which)进行How的操作"。
为了满足不同企业的权限管理粒度,我们为4套RBAC模型实现了4套权限管理系统供大家选择。
使用Spring Security + Ext Js实现的RBAC权限管理系统,可以管理组织机构、资源、角色、用户、菜单等等,加上绚丽的外观能给客户带来控制权限的完美体验。
企业版RBAC权限管理系统优点是进行细粒度权限控制:除了控制url访问权限,还可以控制数据访问权限、数据操作权限等;在业务上可以根据角色或者用户控制报销费用或者请假天数等;而且无论你的业务数据模型如何变化,我们的权限管理系统都不需要变更。
采用基于RBAC模型的权限管理系统具有以下优势:由于角色与权限之间的变化比角色与用户关系之间的变化相对要慢得多,减小了授权管理的复杂性,降低管理开销;而且能够灵活地支持应用系统的安全策略,并对应用系统的变化有很大的伸缩性;在操作上,权限分配直观、容易理解,便于使用;分级权限适合分层的用户级形式;重用性强。
为了让新手入门,首先主要谈谈怎么配置Spring Security,怎么使用Spring Security。本文能够让没有Spring Security基础的java程序员很快入门,学会基本应用Spring Security。
这篇文章主要以图片的形式给大家讲解和分析Spring Security的内部组织结构和原理,了解Spring Security的架构是对Spring Security进行扩展以及高级应用Spring Security的基石。