dy-dashboard/vault/知识库/工作指南/训练记录/2026-09-01-字段级权限配置完整优化.md
2026-10-28 11:14:17 +08:00

24 lines
1.8 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 2026-09-01-字段级权限配置完整优化
<!-- project: path:/home/gxd/.openclaw/workspace/dy-dashboard -->
### 1. 权限配置支持字段级权限
**旭东 → OpenClaw:**
> 现在的系统设置里面的权限配置中,配置权限还是太广泛列,无法做到对某个字段进行设置权限,你有没有什么好的建议给到我
>
> (随后)全部按照你的建议来优化一下
>
> (随后补充)敏感字段现在默认对非管理员隐藏,取消这个,默认对所有角色开放,如果有需要调整的我再单独调整就好了
**OpenClaw 响应:**
按六条建议完成字段级权限完整优化:
1. 新增 `services/field_perms.py` 字段清单单一来源 `FIELD_REGISTRY`(17 页面 / 274 字段,含敏感字段标记);
2. 新增 `/api/permissions/fields` 接口,字段清单供权限配置矩阵渲染;
3. 角色级字段权限(复用 `role_operation_permissions` 的 `field:<字段>:<view|edit>` 存储)+ 用户级字段权限(新增 `/api/permissions/user/field-perms/save` 三态保存接口);
4. 后端强制过滤:计划预测、产品、数据概览/明细接口按字段权限剔除无权字段(前端隐藏 + 后端拦截,防直接调 API 泄露);
5. 前端权限配置界面:角色弹窗 + 用户面板新增字段权限矩阵(查看/编辑两列,用户侧三态:继承/允许/拒绝);
6. 敏感字段(成本价/单价/金额/审核价格/总成本/货品成本/产品总成本/产品总货款)默认对所有角色开放,仅在 UI 中带 🔒 标识提示,需要限制时由管理员单独配置。
测试环境 8.186 优雅重载,服务 HTTP 200,无启动错误;字段解析/后端过滤/模板注入均验证通过。Git 提交 `0b813e8`(完整优化)、`ca04a8e`(取消敏感字段默认隐藏,改为默认开放)。