跳转至

权限架构

Mica 的权限控制分为三层:

  1. 角色级:决定可见菜单和可执行动作
  2. 字段级:决定同一条记录中哪些字段可见
  3. 行级:决定用户能看到哪些业务记录

Cerbos 策略

字段级策略由 Cerbos sidecar 评估,策略文件位于:

deploy/cerbos-policies/

修改策略后,Cerbos 会自动热加载,无需重启整个系统。

行级权限(v1.21.0+)

行级权限由 backend/app/core/scoping.py 统一实施,按角色分为三个层级:

访问级别 角色 PR 可见范围 下游记录 RFQ / 发票
全量 admin / procurement_mgr / it_buyer / finance_auditor 全部 全部 全部
部门 dept_manager 本部门 本部门 PR 关联 隐藏
个人 requester 仅自己 仅自己 PR 关联 隐藏

下游记录包括 PO、合同、到货、付款、发票、交货计划。可见性通过 entity.po_id → PO.pr_id → 可见 PR 链路推导。

管理建议

  • 角色设计尽量稳定,避免按人定制
  • 字段权限变更前先评估财务、审批和供应商信息的影响
  • 在生产环境修改权限规则后,应做回归验证
  • requester 是最小权限角色,适合一般业务员工;需要看全量数据的采购人员应赋予 it_buyer