ObjectOS
配置权限

权限集

授予应用、对象、字段以及系统权限。

权限集

权限集是授予能力的主要方式。它们可以直接分配给用户,或通过角色间接分配。

权限集控制什么

权限类型示例
应用访问用户可以打开 CRM 或 Console
对象权限创建、读取、更新、删除记录
字段权限读取或更新指定字段
系统权限访问 Console、运行报表、导出数据
集成权限使用 API Key、Webhook 或管理操作

对象权限

对象权限回答:

Can this user perform this operation on this object at all?

权限集授权使用以下标志名(由 security 插件的权限求值器强制执行):

标志含义
allowRead读取记录访问规则允许的记录
allowCreate创建记录
allowEdit更新记录访问规则允许的记录
allowDelete删除记录访问规则允许的记录
viewAllRecords读取该对象的每一条记录,绕过记录访问
modifyAllRecords更新或删除该对象的每一条记录,绕过记录访问;读取上隐含 viewAllRecords

除非 viewAllRecordsmodifyAllRecords 绕过了行级边界,记录访问仍然生效。把这些标志保留给管理权限集——它们实际上是对该对象的租户级超级用户授权。

系统权限

系统权限用于平台级操作,例如:

  • 访问 Console;
  • 管理用户;
  • 管理角色和权限集;
  • 运行报表;
  • 导出报表;
  • 管理集成;
  • 查看审计日志。

让系统权限与业务对象权限保持分离,便于管理员审计。

推荐的权限集

从几个具名权限集开始:

权限集用途
Basic User登录并访问主应用
Setup Administrator管理用户、角色、设置和诊断
Report Viewer查看报表和仪表盘
Integration Operator管理 Webhook/API Key
Support User读取/更新支持类对象

再为客户的应用添加领域特定的权限集。

字段安全(附录)

权限集也承载字段级授权。即使用户能读取一条记录,单独的字段也可以被隐藏或设为只读。

两种模式

模式效果
隐藏字段从 API 响应和 Console 视图中完全剥离
只读字段返回,但写入被拒绝

在哪里强制执行

检查对象权限的同一求值器在每条路径上都应用字段规则——REST、ObjectQL、生成的 Console 表单、导出。没有"绕过"它的低层 API。

典型模式

用例建议
sys_user 上的 HR 数据(薪资、SSN)对除 HR 权限集外的所有人隐藏
外部系统标识符对支持只读,对集成运维可写
product 的内部成本 vs 客户价格对销售隐藏 cost,对财务呈现
含 PHI 的备注字段除包含相关临床角色的权限集外一律隐藏

编写建议

  • 当字段承载敏感数据时,默认选择隐藏而非只读 —— 只读仍然会把值泄漏到响应和日志中。
  • 把字段规则打包到匹配真实角色的权限集(HR ManagerFinance Read-only),而不是为每个字段单独建一套——更易审计。
  • 合规场景下,把字段安全与审计日志保留期搭配使用,事后才能回答"谁看过这条记录?"。

On this page