【权限控制的一些思考,RBAC】
如何在Java项目中做RBAC权限控制?
谢邀!RBAC,即基于角色的权限访问控制(Role-Based Access Control) 。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限 。这样,就构造成“用户-角色-权限”的授权模型 。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系 。在Java web的项目中,一把都会涉及到权限管理的,那么,我们应该如何去设计和实现权限管理呢?首先,就是数据库的设计,最少需要4张表,也可以是5张表,加一张表单独定义权限:用户表(user)角色表(role)角色-权限表(role_auth)用户-角色表(user_role)我在这里,使用四张表,大概结构如下:上图已经可以很清晰的看出各表之间的关系用户表:用于保存记录系统用户信息角色表:定义系统所需要的角色,例如:超级管理员、人事、财务等等用户角色表:关联用户表和角色表用户权限表:定义某个用户,拥有什么样的权限(这里的权限表可以单独定义) 。
推荐阅读
- 常见的信息安全技术有哪些,信息技术有哪些
- 一款十分好用的文库下载器,冰点下载器官方下载
- 和谐号和复兴号有什么区别,高铁复兴号和和谐号的区别
- 安卓系统
- 17绍兴市区房价,绍兴房价还有没有上升空间
- 厦门泉州的房价,厦门地铁延伸
- 国家会控制房价吗,国家会控制网购吗
- 重庆欢乐谷周边房价,周围房价是要起飞的节奏吗
- 兰州地铁建成与房价的关系,兰州作为一个二线城市
- 济南与青岛的房价,请问现在济南青岛房价下跌