权限框架核心知识ACL和RBAC

什么是权限控制

忽略特别细的概念,比如权限能细分很多种,功能权限,数据权限,管理权限等。

理解两个概念:用户和资源,让指定的用户,只能操作指定的资源(CRUD)。

 ACL: Access Control List 访问控制列表

以前盛行的一种权限设计,它的核心在于用户直接和权限挂钩
优点:简单易用,开发便捷
缺点:用户和权限直接挂钩,导致在授予时的复杂性,比较分散,不便于管理
例子:常见的文件系统权限设计, 直接给用户加权限

RBAC: Role Based Access Control

基于角色的访问控制系统。权限与角色相关联,用户通过成为适当角色的成员而得到这些角色的权限
优点:简化了用户与权限的管理,通过对用户进行分类,使得角色与权限关联起来
缺点:开发对比ACL相对复杂
例子:基于RBAC模型的权限验证框架与应用 Apache Shiro、spring Security
 
总结:不能过于复杂,规则过多,维护性和性能会下降, 更多分类 ABAC、PBAC等

猜你喜欢

转载自www.cnblogs.com/woxbwo/p/11273756.html
今日推荐