若依框架权限管理的RBAC模型介绍

您所在的位置:网站首页 权限控制模型一定要有角色吗 若依框架权限管理的RBAC模型介绍

若依框架权限管理的RBAC模型介绍

2024-07-17 02:33| 来源: 网络整理| 查看: 265

若依框架的权限管理功能是基于【RBAC】来实现的,即:系统中所有的权限,都是基于角色来控制的。框架对权限的控制,不仅支持菜单的功能,还支持菜单中的每一个按钮的权限控制   RBAC(基于角色的访问控制)模型包含的表有下面五张: 1、用户表   2、角色表   3、菜单表  4、用户角色关联表   5、角色菜单关联表 其5张图的关系如下: 在这里插入图片描述

{ 关于表的杂谈:  表的关系大致可以分为一对一、一对多以及多对多这三种类型;其中若有一对多的情形,则多的那部分必然要生成一个外键,以保证和一那张表进行联系;若有多对多的情形,则必然会存在一个中间表 } { 关于如何用sql语句进行联表查询:

// 查询当前登陆人所拥有的权限菜单数据(登陆人ID:2) // 在编写sql语句时一定要坚持的一个原则:分清主表与辅表 // 因为这里想得到登陆人所拥有的菜单,因而这里菜单表为主表 1、select * from sys_menu t1 // 因为仅有菜单表无法获取到何人是登陆人,因而需要与中间表进行关联(通过两表的共项) 2、select * from sys_menu t1 left join sys_role_menu t2 on t1.menu_id = t2.menu_id // 但此时知道user_id,根据以查的信息中role_id无法定位到user_id,因而还需要进一步进行联表查询 3、select * from sys_menu t1 left join sys_role_menu t2 on t1.menu_id = t2.menu_id left join sys_user_role t3 on t2.role_id = t3.role_id // 最后再利用已知的user_id条件进行查询 4、select * from sys_menu t1 left join sys_role_menu t2 on t1.menu_id = t2.menu_id left join sys_user_role t3 on t2.role_id = t3.role_id where t3.user_id = 2

}



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3