Skip to content

权限管理

权限管理提供系统权限定义的完整 CRUD 操作。权限是 RBAC 模型中的最小单位,标识"谁能做什么"。

功能说明

  • 权限分页查询(支持关键词和模块筛选)
  • 权限新增 / 修改 / 删除(支持批量)
  • 权限详情查看
  • 权限模块列表查询
  • 按模块查询权限列表
  • 数据导出(Excel)
  • 导入模板下载
  • 数据导入(Excel)

API 接口

所有接口均需要 sys:permission:* 权限。

方法路径权限标识说明
GET/api/v1/sys/permission/pagesys:permission:page获取权限分页(支持 keyword、module 筛选)
POST/api/v1/sys/permission/createsys:permission:create添加权限
POST/api/v1/sys/permission/modifysys:permission:modify编辑权限
POST/api/v1/sys/permission/removesys:permission:remove删除权限
GET/api/v1/sys/permission/detailsys:permission:detail获取权限详情
GET/api/v1/sys/permission/exportsys:permission:export导出权限数据
GET/api/v1/sys/permission/templatesys:permission:template下载导入模板
POST/api/v1/sys/permission/importsys:permission:import导入权限数据
GET/api/v1/sys/permission/modulessys:permission:modules获取权限模块列表
GET/api/v1/sys/permission/by-modulesys:permission:by-module根据模块获取权限列表

数据模型

sys_permission 表主要字段:

字段类型说明
idVARCHAR(32)主键(雪花ID)
codeVARCHAR(128)权限标识(如 sys:banner:page
nameVARCHAR(64)权限名称
moduleVARCHAR(64)所属模块(如 sys:banner
categoryVARCHAR(32)权限类型

权限标识规范

权限标识格式为 {module}:{action}

权限标识说明
sys:banner:pageBanner 分页查询
sys:user:create创建用户
sys:role:grantPermission角色分配权限
sys:dict:tree字典树查询

权限自动发现 vs 权限定义

框架有两个层面的"权限"概念:

  1. 权限自动发现(装饰器扫描): 启动时扫描路由的 @HeiCheckPermission 装饰器,缓存到 Redis。仅用于展示有哪些权限可用。
  2. 权限定义(数据库): sys_permission 表中的记录,需要管理员手动创建。角色分配权限时引用的是数据库中的权限记录。

权限自动发现只缓存到 Redis,不会自动写入 sys_permission 表。

Released under the MIT License.