在Chronograf中管理InfluxDB用户
Chronograf 管理员 为 InfluxDB OSS 和 InfluxDB 企业用户提供 InfluxDB 用户管理。
注意: 有关Chronograf用户身份验证和管理的详细信息,请参见 管理安全性。
禁用的管理功能
如果连接到 InfluxDB OSS v2.x 或 InfluxDB Cloud,Chronograf 中的所有 InfluxDB 管理功能均被禁用。请使用 InfluxDB OSS v2.x 或 InfluxDB Cloud 用户界面、命令行工具或 API 来完成管理任务。
在此页面:
启用认证
按照以下步骤启用身份验证。 这些步骤对于InfluxDB OSS实例和InfluxDB Enterprise集群是相同的。
InfluxDB 企业集群: 对集群中的每个数据节点重复前三个步骤。
步骤 1:启用认证。
在InfluxDB配置文件中启用身份验证。 对于大多数Linux安装,配置文件位于 /etc/influxdb/influxdb.conf。
在InfluxDB配置文件(influxdb.conf)的[http]部分,取消注释auth-enabled选项并将其设置为true,如下所示:
[http]
# Determines whether HTTP endpoint is enabled.
# enabled = true
# The bind address used by the HTTP service.
# bind-address = ":8086"
# Determines whether HTTP authentication is enabled.
auth-enabled = true #
步骤 2:重启 InfluxDB 服务。
重启InfluxDB服务以使您的配置更改生效:
~# sudo systemctl restart influxdb
步骤 3:创建管理员用户。
由于启用了身份验证,您需要在数据库中创建一个 admin user,然后才能进行其他操作。
运行下面的 curl 命令以创建管理员用户,替换:
localhost与您的 InfluxDB OSS 实例或您的 InfluxDB Enterprise 数据节点之一的 IP 或主机名- 使用您自己的用户名的
chronothan supersecret使用您自己的密码(请注意密码需要单引号)
~# curl -XPOST "http://localhost:8086/query" --data-urlencode "q=CREATE USER chronothan WITH PASSWORD 'supersecret' WITH ALL PRIVILEGES"
成功的 CREATE USER 查询返回一个空结果:
{"results":[{"statement_id":0}]} <--- Success!
步骤 4:在 Chronograf 中编辑 InfluxDB 源。
如果您已经 将您的数据库连接到 Chronograf,请使用您的新用户名和密码更新 Chronograf 中的连接配置。通过导航到 Chronograf 配置页面并点击源的名称,编辑现有的 InfluxDB 数据库源。
InfluxDB OSS 用户管理
在Chronograf 管理页面:
- 查看、创建和删除管理员和非管理员用户
- 更改用户密码
- 赋予用户管理员权限或从用户中移除管理员权限

InfluxDB 用户分为管理员用户和非管理员用户。有关这些用户类型的更多信息,请参见 InfluxDB 的 认证和授权 文档。
Chronograf 当前不支持将 InfluxDB 数据库 READ或 WRITE 访问权限分配给非管理员用户。
作为一种变通方法,使用以下curl命令授予非管理员用户READ、WRITE或ALL(READ和WRITE)权限,将< >内的内容替换为您自己的值:
授予 READ 权限:
curl --request POST "http://<InfluxDB-IP>:8086/query?u=<username>&p=<password>" \
--data-urlencode "q=GRANT READ ON <database-name> TO <non-admin-username>"
授予 WRITE 权限:
curl --request POST "http://<InfluxDB-IP>:8086/query?u=<username>&p=<password>" \
--data-urlencode "q=GRANT WRITE ON <database-name> TO <non-admin-username>"
授予 ALL 权限:
curl --request POST "http://<InfluxDB-IP>:8086/query?u=<username>&p=<password>" \
--data-urlencode "q=GRANT ALL ON <database-name> TO <non-admin-username>"
在所有情况下,成功的 GRANT 查询返回一个空结果:
{"results":[{"statement_id":0}]} # <--- Success!
通过在上面的curl命令中将GRANT替换为REVOKE,从非管理员用户中移除READ、WRITE或ALL权限。
使用用户界面进行InfluxDB Enterprise用户管理
要创建、管理和删除用户,请点击左侧导航栏中的Admin 。
要创建用户,请执行以下操作:
- 选择用户标签。
- 点击 + 创建用户.
- 添加一个用户名。
- 添加一个密码。
- 点击 创建。
- 在
角色部分为用户分配一个角色。要创建角色,请参见角色。 - 点击 应用更改。
要对用户进行更改,只需点击用户名,进行任何更改,然后点击 应用更改。要删除用户,请点击 删除用户。
用户类型
管理员用户默认具有以下权限:
非管理员用户默认没有权限。将权限和角色分配给管理员和非管理员用户。
权限
添加移除节点
添加或删除集群节点的权限。
相关 influxd-ctl 参数:
add-data,
add-meta,
join,
remove-data,
remove-meta, 和
leave
需要此权限的Chronograf页面: NA
复制分片
复制分片的权限。
相关 influxd-ctl 参数:
copy-shard
需要此权限的Chronograf页面: NA
创建数据库
创建数据库的权限,创建 保留策略、修改保留策略以及查看保留策略。
相关的 InfluxQL 查询:
CREATE DATABASE,
CREATE RETENTION POLICY,
ALTER RETENTION POLICY, 和
SHOW RETENTION POLICIES
需要此权限的Chronograf页面: 控制面板、数据浏览器以及管理员页面上的数据库
创建用户和角色
管理用户和角色的权限;创建用户,删除用户,授予用户管理员身份,授予用户权限,撤销用户的管理员身份,撤销用户的权限,修改用户密码,查看用户权限,以及查看用户及其管理员身份。
相关的 InfluxQL 查询:
CREATE USER,
DROP USER,
GRANT ALL PRIVILEGES,
GRANT [READ,WRITE,ALL],
REVOKE ALL PRIVILEGES,
REVOKE [READ,WRITE,ALL],
SET PASSWORD,
SHOW GRANTS, 和
SHOW USERS
需要此权限的Chronograf页面: 数据浏览器、仪表板、管理员页面上的用户和角色
删除数据
删除数据的权限,特别是 series 和 measurements。
相关的 InfluxQL 查询:
DROP SERIES,
DELETE, 和
DROP MEASUREMENT
需要此权限的Chronograf页面: NA
删除数据库
删除数据库和保留策略的权限。
相关的 InfluxQL 查询:
DROP DATABASE 和
DROP RETENTION POLICY
需要此权限的Chronograf页面: 数据探查器、仪表板、管理员页面上的数据库
KapacitorAPI
访问InfluxKapacitor Enterprise的API权限。 这不包括与配置相关的API调用。
需要此权限的Chronograf页面: NA
Kapacitor配置API
访问与配置相关的API调用的权限,用于InfluxKapacitor企业版。
需要此权限的Chronograf页面: NA
管理连续查询
创建、删除和查看 连续查询 的权限。
相关的 InfluxQL 查询:
CreateContinuousQueryStatement,
DropContinuousQueryStatement, 和
ShowContinuousQueriesStatement
在Chronograf中需要此权限的页面: 数据探索器,仪表板
管理查询
查看和终止查询的权限。
相关的 InfluxQL 查询:
SHOW QUERIES 和
KILL QUERY
需要此权限的Chronograf页面: 管理页面上的查询
管理分片
复制、删除和查看 shards 的权限。
相关的 InfluxQL 查询:
DropShardStatement,
ShowShardGroupsStatement, 和
ShowShardsStatement
需要此权限的Chronograf页面: NA
管理订阅
创建、删除和查看订阅的权限。
相关的 InfluxQL 查询:
CREATE SUBSCRIPTION,
DROP SUBSCRIPTION, 和
SHOW SUBSCRIPTIONS
需要此权限的Chronograf页面: 告警
监视器
查看集群统计信息和诊断的权限。
相关的 InfluxQL 查询:
SHOW DIAGNOSTICS 和
SHOW STATS
在Chronograf中需要此权限的页面: 数据探索器,仪表板
读取数据
读取数据的权限。
相关的 InfluxQL 查询:
SHOW FIELD KEYS,
SHOW MEASUREMENTS,
SHOW SERIES,
SHOW TAG KEYS,
SHOW TAG VALUES, 和
SHOW RETENTION POLICIES
需要此权限的Chronograf页面: 管理员, 警报, 仪表板, 数据探索器, 主机列表
写入数据
写入数据的权限。
相关的 InfluxQL 查询: NA
需要此权限的Chronograf页面: NA
角色
角色是权限的组。将角色分配给一个或多个用户。
要创建一个角色,请执行以下操作:
- 点击 管理员 在左侧导航栏。您将进入
InfluxDB Admin页面。 - 选择角色标签。
- 点击 + 创建角色.
- 给角色命名。
- 点击 创建。
- 在
Users部分分配用户角色 - 在
Permissions部分向角色添加权限。你将看到一个数据库列表及该数据库的所有权限。选择你想要赋予角色的权限。 - 点击 应用更改。
拥有所有权限的角色将出现在列表中。