#3056·DB-GPT

如何支持控制用户查询的数据范围?

Author: shanghai-JerryCreated May 11, 2026Updated Sep 12, 2026
Labelsstale

需求描述

在实际生产环境中,不同用户/角色需要访问的数据范围往往不同。例如:

  • 用户 A 只能查询自己部门的数据
  • 用户 B 可以查询全公司的数据,但某些敏感字段需要脱敏
  • 某些表或行对特定角色不可见

问题

请问 DB-GPT 目前是否支持或计划支持数据级权限控制(Row-Level Security / Data Scope Control)?

如果没有,建议从以下角度考虑:

1. 查询前过滤

  • 在用户提交的自然语言查询被转换为 SQL 之前,注入预定义的过滤条件(如 WHERE department_id = ?
  • 支持基于用户身份、角色、组织架构的动态条件注入

2. 查询后脱敏

  • 对查询结果中的敏感字段进行动态脱敏(如手机号、身份证号、薪资等)
  • 支持配置脱敏规则与角色的映射关系

3. 数据范围配置

  • 提供可视化或配置化的方式,为不同用户/角色绑定可访问的数据范围
  • 支持与外部权限系统(如 RBAC/ABAC)对接

期望

希望能了解:

  1. 当前版本是否有相关功能或 workaround?
  2. 是否有相关的 Roadmap 或计划?
  3. 社区是否有推荐的实现思路或插件?

感谢!