1.8 KiB
1.8 KiB
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、普通角色的列表范围、详情只读态、按钮显隐和接口拒绝行为。