跳转到内容

业务权限

业务权限插件将多个相关数据表归入同一业务分类,再按角色统一配置操作、字段和数据范围。管理员只需维护一份业务策略,保存后插件会将策略展开为该分类中每张表的 NocoBase 原生 ACL 权限。

  • 按业务统一授权:不用逐张数据表重复设置,适合 OA、人事、采购、项目等由多张表组成的业务场景。
  • 角色差异清晰可见:每个角色独立选择允许的新增、查看、编辑、删除、导入、导出与工作流操作,并可绑定相应数据范围。
  • 继续使用原生 ACL:运行时仍由 NocoBase 原生 ACL 判断访问,插件不会增加第二套鉴权、缓存或权限数据表。
  • 覆盖范围可确认:保存前会提示受影响的数据表数量,防止批量下发时遗漏影响范围。

图 1:管理人员在“业务权限”业务分类中使用单独配置,并为已有数据操作设置数据范围。

管理人员业务权限配置

图 2:行政管理员在同一业务分类中拥有独立的操作授权配置。

行政管理员业务权限配置

图 3:管理人员登录业务权限菜单后的实际数据列表。

管理人员业务权限菜单数据

图 4:行政人员登录业务权限菜单后的实际数据列表。

行政人员业务权限菜单数据

  • 以主数据源的表分类作为业务分类入口,自动列出分类中的可配置数据表;未归类的表在“未分类”页签中单独展示。
  • 支持在一个业务页签中批量配置多个表的权限,并在保存时原子展开为每张表的原生 ACL 资源权限。
  • 保存时,系统会自己再查一遍这个业务实际包含哪些表、字段、操作和数据范围,再按查到的内容下发权限。就算有人在浏览器里手动改提交内容,塞进不属于这个业务的表,也不会按这个内容保存。
策略行为
通用配置受影响的数据表回退使用该角色在数据源中的通用策略。
单独配置为业务内每张表写入所选操作、字段权限和数据范围,覆盖该表已有的原生资源权限。

通用配置下,业务分类中的数据表会使用数据源中的通用策略。

通用配置下的业务表列表

单独配置下,可以为业务分类中的数据表统一设置操作权限和数据范围。

单独配置下的操作权限

  • 可以按操作授权新增、查看、编辑、删除、导入、导出及数据源已注册的其他操作。
  • 查看、编辑、删除等已有数据操作可选择数据范围,例如全部数据、本人数据、本机构数据或本机构及下级机构数据。
  • 字段权限按每张表分别配置:例如“合同编号”只在合同表里有,就只在合同表的字段权限里配置,不会出现在其他没有这个字段的表里。
  • 如果在“数据范围”里新增一个筛选条件,想让业务里的多张表共用它,那么这个条件用到的字段必须每张表都有。比如按“所属机构”筛选,但有一张表没有“所属机构”,这个条件就不能一起套用,免得保存后某张表找不到这个字段。
  • 新增的数据范围会统一保存到主数据源,业务权限里保存的是对这个范围的选择。以后如果在数据源页面修改了范围内容,先回到业务权限页面刷新并确认选择仍然有效,再按需要重新保存。

数据范围可以在业务权限配置中选择或维护:

选择或维护数据范围

字段权限按业务表分别配置:

业务表字段权限列表

配置单张业务表的字段权限

  1. 在主数据源中为需要统一管理的数据表设置同一个表分类。
  2. 确认该分类下的表和字段均已完成建模,且角色已具备进入角色权限页的权限。
  1. 进入 用户和权限 → 角色和权限
  2. 在左侧选择目标角色,例如“管理人员”或“行政管理员”。
  3. 打开 权限 → 业务权限,再选择需要配置的业务分类。
  4. 选择 通用配置单独配置
  5. 使用单独配置时,勾选角色需要的操作;为已有数据操作选择合适的数据范围,并按表选择可访问字段。
  6. 点击 保存并应用到 N 张表,在确认对话框中确认覆盖原生数据权限。
  1. 使用只包含目标角色的测试用户登录。
  2. 打开对应业务菜单并刷新页面。
  3. 验证操作按钮是否按角色配置显示;查看、编辑和删除数据时,同时验证数据范围是否符合预期。
  4. 分别使用其他角色重复验证,确认每个角色只能看到其原生 ACL 数据范围内的记录。

业务权限保存后会直接覆盖受影响表的原生资源权限。配置前应确认角色在数据源页的现有权限,避免无意覆盖。

场景配置建议预期效果
管理人员处理本机构业务为查看、编辑、删除配置“本机构及下级机构数据”范围可处理本机构业务,避免跨机构访问。
行政管理员维护行政资料为行政业务分类配置所需操作和字段,不授予无关业务分类管理入口集中,角色职责更清晰。
一线人员仅录入数据只允许新增和查看本人数据,关闭删除、导出等操作降低误删和批量导出的风险。
多表业务流程将主表、明细表和相关记录归入同一业务分类后统一下发减少逐表配置成本,保持同一业务的权限一致性。
权限变更发布先在测试角色验证数据范围和字段权限,再保存到正式角色便于发现覆盖范围或数据范围配置问题。