JAVA客户端使用账号密码调用influxdb2报错:{“code“:“unauthorized“,“message“:“Unauthorized“}

问题:JAVA客户端访问influxdb2报错

说明:当前influxdb版本:2.6.1
使用依赖:

<dependency>
        <groupId>org.influxdb</groupId>
        <artifactId>influxdb-java</artifactId>
        <version>2.10</version>
   </dependency>

对应代码,使用 账号密码 访问:

public static void main(String[] args) {
    InfluxDB influxDB;
    String url = "http://192.168.xxx.xxx:8086/";
    //账号密码为登录UI界面的账号密码
    influxDB = InfluxDBFactory.connect(url, "root", "xxx");
    String command = "select * from demo";
    String database = "b01";
    QueryResult result = influxDB.query(new Query(command, database, true));
    System.out.println(result);
}

执行发现报错:InfluxDBException:{“code”:“unauthorized”,“message”:“Unauthorized”}

根本原因:JAVA客户端需要对Bucket(数据库)进行读写权限授权。

//客户端创建配置,token由UI界面上APIToken创建即可,权限都给。
./influx config create --config-name config004 --host-url "http://192.168.xx.xx:8086" --token "4bmVWxaB0z-J8CND-q3jOVynOkIAZgMAfGpx_7qikUpbfS6-AgffZcOXBYNS6aYu-LHoD019I6y_QZTa_a3NOw==" --active
//进行授权(用户-数据库权限),参数自行替换,在UI界面中查询即可
./influx v1 auth create --org-id {orgId}   --read-bucket {bucketId} --write-bucket  {bucketId} --username root

再次调用就通了。

未结问题

1、使用APIToken生成了所有权限的Token,加入到客户端中,可以查询到用户列表,但是创建用户时,却报错,也是说401没权限。
Token权限:
在这里插入图片描述
创建用户时报错:
在这里插入图片描述
查询官网说是Token不是操作权限Token,然后查了下操作权限Token怎么创建,说要有操作权限的token才能创建,那么问题来了,第一个操作权限token怎么来还有UI界面生成的token明明说了有所有权限,为什么没操作权限

欢迎小伙伴来解答这些问题。反正我已经放弃了。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值