按钮级权限控制必须后端鉴权,权限码需精确到article:delete粒度并存数据库;路由绑定权限码、redis缓存用户权限、变更时同步清理缓存;vue仅做显隐,不替代安全校验。

按钮级权限控制不是靠前端藏一藏就完事的,后端必须对每个操作接口做独立鉴权,且权限码要能精确到 article:delete 这种粒度。Vue 只负责显隐,不负责可信判断。
权限码怎么定义才可维护
不能用 $this->request->action() 直接拼权限码——它只返回方法名(如 delete),丢失模块上下文。也不能硬编码在控制器里,比如写死 'admin/article/delete',改个路由就得动代码。
- 推荐方式:在路由定义时显式绑定权限码,例如 Route::get('admin/article/delete', 'ArticleController@delete')->option('permission', 'article:delete')
- 或统一约定命名规则:
{module}:{action}(如user:export、order:audit),由基类控制器从路由解析出模块名 + 方法名自动映射 - 权限码必须存数据库(
auth_rule.rule_code),带唯一索引和title字段,方便后台增删按钮时直接录入,不改代码
后端接口校验必须每请求都执行
别信“用户登录时查一次权限缓存就够了”——权限可能随时被运营调整,缓存不及时就会导致 403 或越权。
vue-composition-api-best-practices
Vue 3 组合式 API 与
热门下载
相关下载
精品课程
相关推荐
/
热门推荐
/
最新课程
Win10系统下安装Composer步骤,安装教学,基础教程
共1课时 | 305人学习
如何安装 Composer
共1课时 | 208人学习
ThinkPHP5.1完全开发手册
共0课时 | 0人学习
