23 lines
1.8 KiB
Markdown
23 lines
1.8 KiB
Markdown
|
|
# manager 项目权限实施记录
|
|||
|
|
|
|||
|
|
## 修改内容
|
|||
|
|
|
|||
|
|
- 新增后端项目访问控制服务,统一判断 `admin / manager / 创建者` 的项目读权限,以及 `admin / 创建者` 的项目操作权限。
|
|||
|
|
- 项目列表、历史项目、状态统计按当前用户角色自动限制范围,并在项目 VO 中返回 `ownedByCurrentUser` 和 `canOperate`。
|
|||
|
|
- 项目列表、项目详情、流水明细、上传记录、证据读取等基础读接口不再依赖 `ccdi:project:list/query` 菜单权限,避免普通角色登录后被菜单权限提前拦截。
|
|||
|
|
- 为项目详情、结果总览、流水明细、专项排查、关系图谱、资金图谱、上传、参数、证据、重新分析等接口补充项目级读写权限校验。
|
|||
|
|
- 新增 `manager` 角色幂等 SQL,按 `role_key='manager'` 维护角色并授予项目相关菜单权限,不绑定具体用户。
|
|||
|
|
- 前端项目列表、详情页、上传、参数、证据、项目分析图谱按 `canOperate` 展示只读态,并在写入方法入口拦截。
|
|||
|
|
|
|||
|
|
## 影响范围
|
|||
|
|
|
|||
|
|
- `manager` 可查看所有项目,操作他人项目会被后端拒绝;操作本人项目仍受菜单权限控制。
|
|||
|
|
- 普通角色可进入项目列表并查看本人创建的项目,直接传入他人项目或资源 ID 会被拒绝;写操作仍受菜单权限和项目归属共同约束。
|
|||
|
|
- 资金图谱手工资金流保持全局资金图逻辑,不新增项目归属字段,也不按项目过滤手工边;保存入口只使用当前项目 ID 做操作权限校验。
|
|||
|
|
|
|||
|
|
## 验证记录
|
|||
|
|
|
|||
|
|
- 后端计划执行:`mvn -pl ccdi-project -am compile -DskipTests`。
|
|||
|
|
- 前端计划执行:`source ~/.nvm/nvm.sh && cd ruoyi-ui && nvm use && npm run build:prod`。
|
|||
|
|
- 浏览器计划验证:admin、manager、普通角色的列表范围、详情只读态、按钮显隐和接口拒绝行为。
|