Influxdb表示未被授权执行该声明



当我试图通过Python库在influxdb上运行一个简单的SELECT查询时,我遇到了一些问题。

我正在尝试运行以下查询:

influx_client.query('SELECT * FROM "measurements" LIMIT 10;')

当然,在执行查询之前,我切换到了相应的数据库(并连接到服务器(。我还尝试了查询的变体:

influx_client.query("SELECT * FROM "measurements" LIMIT 10;")
influx_client.query("SELECT * FROM 'measurements' LIMIT 10;")
influx_client.query('SELECT * FROM 'measurements' LIMIT 10;')
influx_client.query('SELECT * FROM {0} LIMIT 10;'.format("measurements"))
influx_client.query("SELECT * FROM {0} LIMIT 10;".format("measurements"))

然而,它们都导致了相同的问题。

我得到的结果(或更多的错误(如下:

influxdb.exceptions.InfluxDBClientError: 403: {"error":"error authorizing query: myuser not authorized to execute statement 'SELECT * FROM "measurements" LIMIT 10', requires READ on True"}

我知道我的用户具有所需的权限,因为当使用CLI连接到DB时,我可以执行查询。最重要的是,我用SHOW GRANTS检查了权限,我可以看到所有要求都得到了满足(用户实际上拥有所有权限(。

我已经看到了一些类似的问题(例如本期(,但这不适合我的情况,因为我引用了这个查询。

关于环境的信息:

  • InfluxDB版本:1.8.0
  • InfluxDB python版本:5.3.1
  • Python版本:3.6.8
  • 操作系统版本:CentOS 7

有什么想法吗?

有两件事需要检查身份验证问题:

  1. 具有给定私钥和密码证书的https配置链接
  2. 传递流入数据库连接的用户凭据(也检查区分大小写

已使用涌入,这些都是密钥配置将导致身份验证问题。

使用命令CLI,您需要为给定数据库提供用户权限

Using <you-database>
GRANT ALL PRIVILEGES TO <username>

授予用户权限

最新更新