页面树结构

版本比较

标识

  • 该行被添加。
  • 该行被删除。
  • 格式已经改变。

...

现象一:用户通过SQL原生数据集查询知识库表时,提示:表不存在或没有使用权限,t_user_role无法查,t_user可以,且两张表都没有添加到数据源上

Image Modified

现象二:admin账户登录,查询知识库中的t_restree表,提示表不存在或没有权限使用,且只有该表存在此问题,其他表都可以查到。

Image Modified

现象三:admin账户登录,查询数据源中存在的表,提示表不存在或没有权限使用。

Image Modified

解决方案

在V10.5.15及以上版本中支持对原生sql进行权限控制,上述问题通常是由于开启了系统选项-》高级设置项中关于原生SQL数据集的权限设置导致。开启后情况说明如下:现象一,t15及以上版本中支持对原生sql进行权限控制,配置入口和配置项使用说明参考:SQL查询/数据集支持权限控制

开启了选项后,如果查询没有权限的表或该表在数据库中看不到,登录的用户也是无法查询该表的。

针对上述现象说明如下:

现象一,t_user_role、t_restree表等其它知识库报表没有被内置资源用到,受此配置项的权限控制。

现象二,t_user、t_role、t_group_user、t_group、t_operationlog_type、t_timeconsuming_history、t_timeconsuming、t_ext_reporthot和t_ext_reporthot 这些表都是系统内置报表和参数用的表,因此不受此权限控制。

现象三,对于查询业务库表提示无权限的,需要将对应要查询的表添加到数据源中才可。

如若是不希望进行上述权限检测,可以通过关闭【系统选项】-【高级设置】的原生SQL数据集相关权限校验功能即可,关于此处配置项的详细说明参考:SQL查询/数据集支持权限控制【高级设置】的原生SQL数据集相关权限校验功能即可。

如若是希望保留权限控制的情况下可以正常查询:

1、对于需要查询的业务库的表,可将需要查询的表添加到数据源中即可。

2、对于需要查询的知识库的表,因内置的知识库数据源无法编辑,因此建议新建数据源连接知识库,将需要查询的表添加到该数据源中,再基于该数据源查询。