36 lines
1.3 KiB
Markdown
36 lines
1.3 KiB
Markdown
# 6.2 角色管理
|
||
|
||
:::tip 概述
|
||
角色(gin_role,租户级)是权限与数据范围的载体:向上关联用户(gin_user_role),向下关联菜单权限节点(gin_role_menu)。角色上配置的数据范围档位决定行级可见性。
|
||
:::
|
||
|
||
## 功能清单
|
||
|
||
| 接口 | 说明 |
|
||
|---|---|
|
||
| Page / List / Detail | 标准查询 |
|
||
| Add / Update / Delete / BatchDelete | 标准维护 |
|
||
| MenuList | 获取菜单树(供权限勾选界面渲染) |
|
||
| SavePermission | 保存角色的菜单权限勾选(事务内重建 gin_role_menu) |
|
||
|
||
## 特色机制
|
||
|
||
- **数据范围档位**(data_scope):1 全部 / 2 本部门及以下 / 3 本部门 / 4 仅本人;多角色用户取最宽松
|
||
- **权限保存**:SavePermission 为典型手写方法——事务内重建关联表,非标准五方法能表达
|
||
- **授权缓存联动**:权限变更后,用户权限缓存(300 秒)到期或重新登录后生效
|
||
|
||
## 权限链路中的位置
|
||
|
||
```text
|
||
角色勾选菜单节点 → gin_role_menu → LoadIdentity 装配权限集合 → Authz 校验
|
||
```
|
||
|
||
## 管理界面
|
||
|
||
`system/role`:列表 + 编辑 + 权限树勾选(MenuList 渲染)+ 数据范围选择。
|
||
|
||
## 相关
|
||
|
||
- [5.4 权限管理(RBAC)](/zh/core/rbac.html)
|
||
- [6.3 菜单管理](/zh/modules/menu.html)
|