67837df8d0
- 新增全套考试卷、评估卷、参考答案与考试培训包模板 - 修正slidev培训课件:调整模块标题、链路图缩放,替换工单示例为通用业务对象 - 修正课堂红线表述为证据红线,将小组作业调整为个人作业要求 - 新增权限、状态流转、审计日志、看板指标四类可复用业务规则块 - 整理AI工程技能交付包,迁移旧资产至客户专属交付包并统一术语 - 新增考试输出模板与TRAE使用记录文档
4.1 KiB
4.1 KiB
模块 2:权限控制方案生成
权限不是按钮隐藏。工单模块必须同时覆盖菜单权限、按钮权限、接口权限和数据权限。
菜单
能否进入页面
按钮
能否看到操作
接口
能否直接调用
数据
能看到哪些工单
工单权限字符建议
work:order:list
work:order:query
work:order:add
work:order:edit
work:order:delete
work:order:assign
work:order:transition
work:order:audit
work:order:dashboard
权限字符必须统一命名,否则前端、后端、菜单配置和 Review 清单会对不上。
权限控制方案表
| 操作 | 前端入口 | 权限字符 | 后端接口 | 数据权限 | 验收 |
|---|---|---|---|---|---|
| 新增工单 | 新增按钮 | work:order:add | /workOrder/add | 无 | 无权限账号返回 403 |
| 删除工单 | 删除按钮 | work:order:delete | /workOrder/delete | 管理员范围 | 非管理员返回 403 |
| 指派工单 | 指派按钮 | work:order:assign | /workOrder/assign | 团队范围 | 研发账号不可指派 |
| 状态流转 | 状态按钮 | work:order:transition | /workOrder/transition | 工单可见范围 | 非法角色不能流转 |
| 查看看板 | 看板菜单 | work:order:dashboard | /workOrder/dashboard/* | 管理范围 | 只读用户不可访问 |
权限落地检查
| 检查项 | 通过标准 |
|---|---|
| 菜单权限 | 菜单配置有对应权限字符 |
| 按钮权限 | 无权限用户看不到敏感按钮 |
| 接口权限 | 直接请求敏感接口被拒绝 |
| 数据权限 | 不同角色只看到授权范围 |
| 验收记录 | 有账号、操作、结果和证据 |
rules 要落到这些位置
| rule 条款 | 代码落点 | 验证项 |
|---|---|---|
| 四层校验 | 菜单配置、按钮权限、Controller、Service 查询 | 无权限账号不可见且接口失败 |
| 权限字符有来源 | 菜单表、路由、按钮指令、后端注解 | 同一字符贯穿前后端 |
| 数据权限后端校验 | 列表、详情、导出、看板查询 | 改请求参数不能越权 |
| 敏感字段最小返回 | 列表接口、详情接口、审计展示 | 不暴露不必要 old/new value |
让 TRAE 改权限前,先把相关 rule 和权限控制方案一起给它。