配置行级权限
行级权限用于控制同一张表中不同用户可以看到哪些数据行。它适合多部门共用同一个分析域,但每个部门只能看到自己负责范围的数据。
例如:
- 华北销售只能查看华北区域订单。
- 门店经理只能查看自己门店数据。
- 财务人员只能查看授权主体或组织范围内的数据。
行级权限的作用
行级权限用于让用户在 Analytics Agent 中发起自然语言问答时受到对应数据范围约束。配置完成后,应使用受限用户验证问答结果和生成 SQL,确认规则已经按预期生效。
例如,同样提问“今年订单金额是多少”,不同用户看到的结果可能不同:
| 用户 | 行级权限 | 问答结果范围 |
|---|---|---|
| 总部管理员 | 未限制或全量授权 | 全部订单。 |
| 华北销售 | 区域 = 华北 | 华北订单。 |
| 华南销售 | 区域 = 华南 | 华南订单。 |
配置入口
行级权限涉及两个入口:
| 入口 | 位置 | 作用 |
|---|---|---|
| 定义权限点 | 管理 > 用户管理 > 行级权限 | 定义权限点映射到哪张表和哪个字段。 |
| 给用户授权 | 管理 > 用户管理 > 账号管理 > 用户行更多菜单 > 行级权限 | 为具体用户配置权限点的规则值。 |
注意:权限点定义和用户授权不在同一个页面完成。
第一步:定义行级权限点
进入“管理 > 用户管理 > 行级权限”,新建或编辑行级权限点。
实操中页面包含以下配置:
| 配置项 | 说明 |
|---|---|
| 权限点名称 | 用于在用户授权时选择的权限点名称。 |
| 权限应用映射 | 表示该权限点应用到哪些数据映射。 |
| 目标数据表 | 需要进行行级控制的数据表。 |
| 目标列 | 用于过滤数据范围的字段。 |
| 添加映射 | 一个权限点可以配置映射关系。 |
| 描述 | 说明权限点用途和适用范围。 |
实操中看到的示例权限点为
test,映射到:
这表示该权限点会作用到
players 表的 playerid 字段。
第二步:给用户配置行级权限
进入“管理 > 用户管理 > 账号管理”,找到目标用户。
- 点击用户行右侧更多菜单。
- 选择“行级权限”。
- 在“编辑行级权限”页面点击“添加行级权限”。
- 选择已定义的行级权限点。
- 选择规则类型。
- 输入规则值,按回车确认。
- 保存。
实操中,添加行级权限表单包含:
| 配置项 | 说明 |
|---|---|
| 行级权限 | 选择预先定义好的权限点,例如 。 |
| 类型 | 支持“枚举值”或“表达式”。 |
| 规则值 | 输入该用户可访问的数据范围。页面提示按回车确认。 |
枚举值和表达式
| 类型 | 适用场景 | 示例 |
|---|---|---|
| 枚举值 | 用户可访问的数据范围是明确值列表。 | 区域为“华北”“华东”;门店为 1001、1002。 |
| 表达式 | 数据范围需要用条件表达式描述。 | 组织层级、动态范围、复杂条件。 |
如果业务规则简单,优先使用枚举值,便于理解和维护。如果规则来自组织层级或动态映射,再考虑表达式。
与列隐藏的区别
行级权限控制“哪些行可见”,列隐藏控制“哪些字段不暴露给问答”。
| 能力 | 控制对象 | 示例 |
|---|---|---|
| 行级权限 | 数据行 | 只能看华北区域订单。 |
| 列隐藏 | 字段列 | 不让用户看到身份证号、手机号、内部备注。 |
两者可以组合使用。例如,财务人员只能看自己组织的数据行,同时隐藏不应暴露的敏感字段。
与角色数据权限的区别
角色数据权限控制资源访问范围,行级权限控制表内数据范围。
| 配置 | 解决的问题 |
|---|---|
| 角色数据权限 | 这个角色能否查看或编辑表、文件、知识、指标、答案构建器等资源。 |
| 行级权限 | 这个用户在查询某张表时,只能看到哪些行。 |
例如,一个用户可能拥有某张表的查看权限,但行级权限仍会限制他只能看到部分数据。
验证方法
配置后建议使用受限用户验证:
- 进入目标分析域。
- 提问一个不带筛选条件的问题,例如“订单总数是多少”。
- 查看结果是否只包含授权范围内的数据。
- 提问一个试图越权的问题,例如“查看全部区域订单”。
- 检查结果是否仍被行级权限限制。
- 如有必要,查看生成 SQL 或问答记录,确认系统自动附加了权限条件。
维护建议
- 权限点名称应使用业务含义,例如“销售区域权限”“门店数据权限”。
- 目标列应选择稳定、低歧义的权限字段。
- 不要用频繁变化、含义不清或空值较多的字段作为权限列。
- 用户岗位变化后,应及时更新行级权限规则。
- 重要权限变更后,应结合审计日志检查操作记录。
相关文档
联系我们
