Appearance
问题现象
子管理员账号登录后台后,部分菜单不显示、点击按钮无响应,或者发起操作时页面弹出提示: 抱歉,您没有权限进行此操作,接口返回 HTTP 403 Forbidden。
根本原因
EBAOZU V4 基于 RBAC(角色权限控制)机制:
- 角色未勾选该权限节点:超级管理员在配置子管理员所属角色时,遗漏了对应菜单或按钮操作权限。
- 新增功能未录入权限规则:二次开发新增了后端控制器方法,但数据库
eb_system_menus(权限规则表)中尚未录入该接口路由。 - 前端 Token 权限缓存未刷新:权限分配后,子管理员仍使用旧 Token 发起请求。
解决步骤
第一步:定位无权限的具体接口
- 打开浏览器开发者工具(F12),切换到【Network(网络)】。
- 触发报错操作,找到状态码为
403的请求,查看其请求路径(如/adminapi/setting/config)。
第二步:检查与添加权限规则
- 使用超级管理员账号登录平台总后台。
- 进入【设置】 -> 【系统维护】 -> 【权限规则】。
- 搜索第一步获取的接口路径:
- 若规则已存在:直接进行第三步。
- 若规则不存在:点击【添加规则】,选择对应上级菜单,填写规则名称(如“保存配置”),并在“接口路由”中填入对应路由路径,提交保存。
第三步:为角色分配权限
- 进入【设置】 -> 【管理权限】 -> 【角色管理】。
- 找到子管理员对应的角色,点击【编辑】。
- 在权限树中勾选该菜单或接口权限,点击【保存】。
第四步:重新登录生效
子管理员退出后台登录并重新输入账号密码登录,系统签发携带最新权限范围的 Token 后即可正常使用该功能。