RBAC权限模型
  Bwj8Xb6G7Vfu 2024年08月07日 50 0

概念

RBAC (Role-Based Access Control) 是基于角色的访问控制,是一种用设计权限的一种思想,主要是将功能组合成角色,再将角色分配给用户
image.png
目标:

  1. 解耦用户和功能,降低操作错误率
  2. 降低功能权限分配的繁琐程度

实现思想

RABC 主要有user 用户表,role角色表,permission权限表,以及role-permission和user-role的中间关联表,但是实际上对于一般的需求,我们可以只使用user用户表, 里面存储字段标识 角色信息,然后在代码层面进行编码方式 使用enum枚举出所有角色表,使用权限注解标识方法,将权限注解与方法进行一个绑定,其中权限里面包括(角色)信息,通过拦截器进行拦截权限进行筛选。
image.png
从上面这个的图片来看,我们将用户和角色关联,角色和权限关联,并且都是N对N的关系,所以要创建两个新的关系表。
image.png

将相同权限的用户封装成一个角色,然后将某一个角色与多个权限相关联起来,一旦用户被分配了适当的角色后,该用户就拥有此角色的所有操作权限。
这样做的好处是,不必在每次创建用户时都进行分配权限的操作,只要分配用户相应的角色即可,而且角色的权限变更比用户的权限变更要少得多,这样将简化用户的权限管理。这种“权限赋予给角色,把角色又赋予用户”的权限设计既清晰,又易管理。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2024年08月07日 0

暂无评论

推荐阅读
  VGxawBTN4xmE   13小时前   10   0   0 Java
  FHUfYd9S4EP5   3天前   24   0   0 Java
  sSh3rBaiME5f   4天前   32   0   0 Java
  qCe06rFCa8NK   3天前   18   0   0 Java
  ZTo294hNoDcA   3天前   26   0   0 Java
  FHUfYd9S4EP5   3天前   20   0   0 Java
  QGiRIwDaZAe8   4天前   23   0   0 Java
Bwj8Xb6G7Vfu
作者其他文章 更多