权限管理模型

之前对权限管理之间的概念比较模棱两可,统一总结一下

ACL

ACL(Access Control List)基于用户的权限管理模型

简介:基于用户进行权限分配管理,权限直接作用在用户上,只需要给用户分配或取消某个权限,实现权限控制,适用于小型管理系统

结构:user表permission表user_permission表

RBAC

RBAC(Role Based Access Control)基于角色的权限管理模型

简介:基于角色的权限管理模型,即在用户和权限之间多一个角色管理层,用户只需要分配角色不需要关心权限,权限分配在角色上

打个比方,用户对某个文件具有读写等十多个权限,如果是用ALC的方式,则每添加一个用户,就得给用户执行十多次权限的绑定(执行n多次),而RBAC只需要提前将这十多个权限绑定在一个角色上(只执行一次),每新增一个用户,就将这个角色分配给用户,即可保证每个用户都拥有权限,适用于角色权限明确的系统,需要维护角色、权限、用户之间的关系

结构:user表role表user_role表permission表role_permission表

ABAC

ABAC(Attribute Based Access Control)基于属性的权限管理模型

简介:对用户本身的属性进行标识,通过标识来判断用户权限,是通过实体的属性、操作类型、相关的环境来控制是否有对操作对象的权限

例如后台管理员可以看所有的文章,普通游客可以看所有上架的文章,文章作者可以看自己发布的所有文章,如果用RBAC去实现的话,需要维护用户表,角色表,权限表,复杂程度,成本都较高,而如果ABAC模型实现,只需要判断当前用户是否等于作者,是否是管理员,是否文章已上架这几个属性即可(计算结果即可判断权限),直观,维护成本低,易读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值