RBAC_PERMISSION_MATRIX.md 1.9 KB

RBAC 权限矩阵

后端是唯一权限判定点;前端隐藏菜单和按钮只改善交互,不构成安全边界。

权限 查看者 编辑者 管理员 典型用途
governance:read 查询治理对象、元数据、数据源、流程和服务
governance:edit 新增、修改和删除治理对象
review:approve 数据审核和治理变更确认
orders:operate 处理数据订单
workflow:activate 激活 DataFlow 对应的 n8n Workflow 版本
users:manage 创建、停用用户、重置密码和分配角色

API 边界

  • 公开:GET /api/system/healthPOST /api/system/auth/login
  • 当前身份:GET /api/system/auth/me,至少需要查看权限。
  • 用户管理:/api/system/users 全部需要 users:manage
  • 系统配置和诊断:除健康检查外需要管理员权限。
  • DataFlow 激活、发布和执行操作需要 workflow:activate
  • 数据订单变更需要 orders:operate
  • 其余 GET 默认需要 governance:read,其余写操作默认需要 governance:edit;无法分类的方法按管理员权限拒绝。

所有已注册 /api/ 路由由自动化测试逐项验证能够被权限策略分类。缺少或无效 Bearer Token 返回 401;身份有效但权限不足返回 403。禁用用户后,尚未过期的 Token 也会因为服务端实时身份检查失效。

身份生命周期

首位管理员只能通过 python -m app.commands.bootstrap_admin 显式创建;平台不提供 注册 API。后续账号由管理员创建。密码使用 Argon2id,仅保存哈希;历史 Base64 账号保留在 users_legacy 供核查,必须重置密码后才能迁移。系统阻止停用最后一个 有效管理员或移除其管理员角色。