什么是用户权限
RuoYi框架中的用户数据权限通常包括以下几个方面:
- 部门数据权限: 系统管理员可以配置用户只能访问特定部门的数据。这确保了用户只能查看、编辑或删除其所在部门的相关信息。
- 岗位数据权限: 类似于部门权限,系统管理员可以配置用户只能访问特定岗位的数据。这对于具有不同职责的用户来说很有用。
- 自定义数据权限: RuoYi还提供了自定义的数据权限配置,系统管理员可以根据实际业务需要配置用户对特定数据的访问权限。
- 菜单权限: 除了数据权限,RuoYi还支持菜单权限的配置。系统管理员可以为用户分配菜单权限,限制用户在前端系统中能够看到和操作的菜单项。
这些数据权限的配置通常是在系统的管理界面中进行的,管理员可以通过图形界面配置用户的数据权限,而不需要直接修改数据库或代码。
不同权限类型 结合 后端代码
全部类型
如果是拥有全部权限,则不对sql语句做修改
部门权限
deptAlias 是部门表的别名,user.getDeptId()是用户的id,在部门表中获取到对应dept_id的数据。
自定义权限
deptAlias 是部门表的别名,通过 StringUtils.append() 方法进行拼接。意义是,只有当某行数据的 dept_id 存在于角色关联的部门ID集合中时,该数据行才符合自定义权限规则。
本部门及以下权限
筛选出部门ID等于当前用户所属部门ID(user.getDeptId()),部门ID在当前用户所属部门的后代部门ID集合中(通过 find_in_set() 函数实现)
个人权限
仅查询本人信息,如果信息存在则拉取相关信息,否则返回没查到