feat: complete phase 02 RBAC and data scope recovery

This commit is contained in:
2026-09-10 10:58:43 +08:00
parent b46b48eb33
commit 5b51d5b3f1
115 changed files with 3608 additions and 1135 deletions
@@ -116,11 +116,11 @@
**Files:** `backend/src/main/java/com/danyang/match/platform/shared/filter/PermissionFilter.java`、`permission/**`、`security/**`、`audit/**`、V015 后续新迁移、`admin-web/src/stores/auth.ts`、`admin-web/src/router/index.ts`。
- [ ] 先写角色×资源×动作×数据范围矩阵测试,覆盖 counselor、counseling_manager、content_editor、service_station_operator。
- [ ] 用明确的用户 Principal 和 Operator Principal 替代各 Controller 自行解析 token/userId。
- [ ] 移除 `/operator/** → operator_login` 粗粒度授权,改为接口 Permission + Service DataScope 双重校验。
- [ ] 把当前不在 `/operator/**` 下的运营接口统一迁移或施加同等级方法权限。
- [ ] 验证 ContentEditor 无用户婚恋数据权限、Counselor 仅 Assigned、ServiceStationOperator 仅站点/任务范围、Organization 关系不继承权限。
- [x] 先写角色×资源×动作×数据范围矩阵测试,覆盖 counselor、counseling_manager、content_editor、service_station_operator。
- [x] 用明确的用户 Principal 和 Operator Principal 替代各 Controller 自行解析 token/userId。
- [x] 移除 `/operator/** → operator_login` 粗粒度授权,改为接口 Permission + Service DataScope 双重校验。
- [x] 把当前不在 `/operator/**` 下的运营接口统一迁移或施加同等级方法权限。
- [x] 验证 ContentEditor 无用户婚恋数据权限、Counselor 仅 Assigned、ServiceStationOperator 仅站点/任务范围、Organization 关系不继承权限。
**Gate:** 权限正向用例通过,四类越权负向用例全部被服务端拒绝并写审计;前端菜单隐藏仅作为体验,不作为安全控制。