主题
权限管理
权限管理模块基于 RBAC(基于角色的访问控制)模型,提供角色、菜单、权限点的统一管理,并结合 SSO/OAuth2 实现企业级统一认证与授权。
功能总览
| 功能点 | 说明 |
|---|---|
| 角色管理 | 角色创建、权限分配、角色继承 |
| 菜单管理 | 系统菜单树配置与维护 |
| 权限分配 | 角色与菜单/按钮/数据权限的关联 |
| SSO 认证 | 基于 OAuth2 的单点登录 |
| 数据权限 | 按部门、用户维度的数据级权限控制 |
权限模型
系统权限控制分为三个层级:
菜单权限 → 控制用户能看到哪些页面
按钮权限 → 控制用户能操作哪些功能按钮
数据权限 → 控制用户能访问哪些数据范围RBAC 模型实现
用户 ← 关联 → 角色 ← 关联 → 权限集合
↓
菜单权限 / 按钮权限 / 数据权限- 一个用户可以拥有多个角色
- 一个角色可以分配给多个用户
- 权限集合 = 菜单可见权限 + 按钮操作权限 + 数据范围权限
角色管理
角色是权限分配的核心载体:
- 角色创建:定义角色名称、编码和角色类型
- 权限配置:为角色分配菜单可见性和操作权限
- 角色继承:支持角色间的权限继承关系
- 角色克隆:基于已有角色快速创建新角色
- 成员管理:查看和调整角色下的用户成员
菜单管理
菜单管理维护系统的导航菜单结构:
- 树形结构:支持多级菜单树,无限层级
- 菜单类型:支持目录、菜单、按钮三种类型
- 路由配置:关联前端路由组件和路由路径
- 图标配置:为菜单配置图标
- 排序调整:拖拽调整菜单显示顺序
- 缓存策略:配置页面是否启用 KeepAlive 缓存
SSO 单点登录
系统支持基于 OAuth2 协议的单点登录,实现多系统统一认证:
认证流程
用户访问系统 → 跳转 SSO 认证中心 → 输入凭证
↓
认证中心验证 → 生成授权码 → 回跳业务系统
↓
业务系统换取 Token → 获取用户信息 → 登录成功核心特性
- 统一登录:一次登录,多个系统间无缝跳转
- 统一登出:单点登出,所有系统同步退出
- Token 管理:基于 JWT 的 Token 签发和验证
- 多种授权模式:支持授权码模式、密码模式等多种 OAuth2 授权模式
- 安全策略:支持 Token 刷新、过期策略、黑白名单
数据权限
数据权限控制用户可访问的数据范围:
| 权限范围 | 说明 |
|---|---|
| 仅本人 | 只能查看自己创建的数据 |
| 本部门 | 可查看所在部门的数据 |
| 本部门及下属 | 可查看本部门及所有下级部门的数据 |
| 自定义 | 可查看指定部门的数据 |
| 全部 | 可查看所有数据(管理员权限) |
