目录
一、数据权限展示
进入分配数据权限页面
可以为角色添加不同的数据权限,实现数据管理
二、数据权限作用及操作
使用数据权限,我们可以让具有不同权限的用户看到的数据有差别
- 用户admin 的角色为超级管理员,超级管理员设置为具有访问全部数据权限
- 用户ry 的角色为普通角色,普通角色设置为只有访问本部门数据权限,其所属部门为测试部门
分别使用超级管理员账号admin及普通用户ry登录查看二者可以看到的数据有何区别
admin用户
ry用户
三、分析AOP类DataScopeAspect
@DataScope注解
AOP 类DataScopeAspect 处理注解@DataScope
根据当前登录用户的信息,判断是否为超级管理员,如果不是,则调用dataScopeFilter
方法进行数据权限过滤。这种机制通常用于确保只有非管理员用户才会受到数据权限的约束,管理员用户可以访问所有数据
AOP 类DataScopeAspect 对于全部权限、自定义权限、本部门及以下权限、仅本人权限最终添加的SQL 语句及作用
全部权限:清空之前的条件并跳出循环
自定义权限:将部门与角色关联表中的部门ID添加到查询条件中
本部门及以下权限:当前用户的部门ID及以下部门的ID添加到查询条件中
仅本人权限:判断是否有用户别名,若有则将当前用户的ID添加到查询条件中,否则不会查询数据