跳到正文
AskTable

文档反馈

当前页面设计数据权限/permissions/design

0 / 5,000

反馈将发送给维护团队。

前往控制台
前往控制台

成员与权限

按部门和地区设计数据权限

用一个带变量的数据角色,让每个人只看到自己负责范围的数据。

本教程用一个常见场景演示数据权限的设计:销售人员只能看到自己所在大区的订单,并且看不到客户手机号;管理层可以看到全部数据。

场景

数据源中有订单表 sales.orders,包含 region(大区)、amount(金额)、customer_phone(客户手机号)等字段。

人员应看到的数据
华东销售华东区订单,不含客户手机号
华南销售华南区订单,不含客户手机号
管理层全部订单

设计思路

  • 按变量区分地区,不按地区建角色。 建一个「区域销售」角色,用变量 region 表示大区,而不是建「华东销售」「华南销售」两个角色。地区再多,也只维护一个角色。
  • 允许策略管范围,拒绝策略管敏感字段。 一条允许策略限定可见的表和行,一条拒绝策略排除手机号。
  • 管理层不绑定角色。 不绑定数据角色即为「全部数据」,仍受智能体数据源限制。

需要项目负责人或项目管理员。入口:「更多」→「数据访问控制」。

步骤

建允许策略:限定表和行

新建策略「订单-本区可见」,权限选「允许」,添加数据源。

  • 字段级规则:表名「完全匹配」orders。
  • 行级过滤:表 sales.orders,字段 region,运算符 =,值的来源选「角色变量」,变量名填 region。

建拒绝策略:排除手机号

新建策略「隐藏客户手机号」,权限选「拒绝」,添加同一数据源,字段级规则:字段名「完全匹配」customer_phone。

建角色

新建角色「区域销售」,在「应用策略」中添加以上两条策略。在「数据范围预览」中确认能看到 orders 表,且不包含 customer_phone。

分配给成员

在「项目设置」→「项目成员」中,为华东的销售人员选择「区域销售」,变量 region 填 华东;华南的填 华南。

已配置企业身份集成并同步了部门资料时,可以把 region 设为引用成员的部门资料,人员调岗后自动生效,见成员与角色。

管理层成员不绑定数据角色。

检查结果

  • 用华东销售的账号提问「上个月各区销售额」,结果只包含华东。
  • 提问「列出客户手机号」,智能体说明无法访问该字段。
  • 用管理层账号提问,结果包含所有大区。

如果华东销售提问时提示「数据权限配置未完成」,说明 region 没有填写,在「项目成员」中补齐变量。

延伸

  • 需要多个值(例如负责两个大区)时,行级过滤的值来源选「SQL(高级)」,使用多值变量。
  • 飞书群里的提问者,在智能体的「人员权限」中为其授权同一个角色并填写变量,见飞书渠道用户权限。
  • 只是不想让 AI 看到真实手机号,但仍需按手机号统计时,用脱敏代替拒绝策略。