Ruoyi 权限框架基于 RBAC 权限模型;
Ruoyi 整体权限模型图分析
进一步阐述:
菜单权限
在数据库中的体现:sys_role_menu
表
数据权限
在数据库中的体现: sys_user
表的 dataScope
字段指定数据范围(体现为常量,具体请查看 DataScopeAspect
类);sys_role_dept
体现角色与部门的数据关联("自定数据范围"的情况)
实现方式:利用 【注解+切面】的方式计算出【过滤条件,即 dataScope】并将其添加在实体的共有属性 params 中,在 Mapper 文件中使用 #{params.datascope}
追加过滤条件。注解:@DataScope
;切面类:DataScopeAspect
使用场景:管理某些与部门相关的业务,比如用户管理、角色管理(当前角色管理的部门集合->部门的用户集合->用户多角色集合)。联想其他有关业务:薪资管理、业绩考核等等