后端是唯一权限判定点;前端隐藏菜单和按钮只改善交互,不构成安全边界。
| 权限 | 查看者 | 编辑者 | 管理员 | 典型用途 |
|---|---|---|---|---|
governance:read |
是 | 是 | 是 | 查询治理对象、元数据、数据源、流程和服务 |
governance:edit |
否 | 是 | 是 | 新增、修改和删除治理对象 |
review:approve |
否 | 是 | 是 | 数据审核和治理变更确认 |
orders:operate |
否 | 是 | 是 | 处理数据订单 |
workflow:activate |
否 | 否 | 是 | 激活 DataFlow 对应的 n8n Workflow 版本 |
users:manage |
否 | 否 | 是 | 创建、停用用户、重置密码和分配角色 |
GET /api/system/health、POST /api/system/auth/login。GET /api/system/auth/me,至少需要查看权限。/api/system/users 全部需要 users:manage。workflow:activate。orders:operate。governance:read,其余写操作默认需要
governance:edit;无法分类的方法按管理员权限拒绝。所有已注册 /api/ 路由由自动化测试逐项验证能够被权限策略分类。缺少或无效
Bearer Token 返回 401;身份有效但权限不足返回 403。禁用用户后,尚未过期的 Token
也会因为服务端实时身份检查失效。
首位管理员只能通过 python -m app.commands.bootstrap_admin 显式创建;平台不提供
注册 API。后续账号由管理员创建。密码使用 Argon2id,仅保存哈希;历史 Base64
账号保留在 users_legacy 供核查,必须重置密码后才能迁移。系统阻止停用最后一个
有效管理员或移除其管理员角色。