文档文档

在 Chronograf 中管理 InfluxDB 用户

Chronograf 管理员为 InfluxDB OSS 和 InfluxDB Enterprise 用户提供 InfluxDB 用户管理。

注意: 有关 Chronograf 用户身份验证和管理的详细信息,请参阅管理安全性

禁用的管理功能

如果连接到 InfluxDB OSS v2.xInfluxDB Cloud,则 Chronograf 中禁用所有 InfluxDB 管理功能。 使用 InfluxDB OSS v2.x 或 InfluxDB Cloud 用户界面、CLI 或 API 来完成管理任务。

本页内容

启用身份验证

按照以下步骤启用身份验证。 这些步骤对于 InfluxDB OSS 实例和 InfluxDB Enterprise 集群是相同的。

InfluxDB Enterprise 集群: 对集群中的每个数据节点重复前三个步骤。

步骤 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:创建管理员用户。

由于启用了身份验证,您需要先创建一个管理员用户,然后才能在数据库中执行任何其他操作。 运行以下 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 OSS user management

InfluxDB 用户可以是管理员用户或非管理员用户。 有关这些用户类型的更多信息,请参阅 InfluxDB 的身份验证和授权文档。

Chronograf 当前不支持向非管理员用户分配 InfluxDB 数据库 READWRITE 访问权限。

作为一种解决方法,使用以下 curl 命令向非管理员用户授予 READWRITEALL (READWRITE) 权限,将 < > 内的任何内容替换为您自己的值

授予 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,从非管理员用户那里删除 READWRITEALL 权限。

使用 UI 进行 InfluxDB Enterprise 用户管理

要创建、管理和删除用户,请单击左侧导航栏中的 管理员

要创建用户,请执行以下操作

  1. 选择 用户 选项卡。
  2. 单击 + 创建用户
  3. 添加用户名。
  4. 添加密码。
  5. 单击 创建
  6. 角色 部分中为用户分配角色。 要创建角色,请参阅 角色
  7. 单击 应用更改

要更改用户,只需单击用户名,进行任何更改,然后单击 应用更改。 要删除用户,请单击 删除用户

用户类型

默认情况下,管理员用户具有以下权限

非管理员用户默认没有任何权限。 向管理员和非管理员用户分配权限和角色。

权限

AddRemoveNode

从集群添加或删除节点的权限。

相关 influxd-ctl 参数add-dataadd-metajoinremove-dataremove-metaleave

Chronograf 中需要此权限的页面:NA

CopyShard

复制分片的权限。

相关 influxd-ctl 参数copy-shard

Chronograf 中需要此权限的页面:NA

CreateDatabase

创建数据库、创建 保留策略、更改保留策略和查看保留策略的权限。

相关 InfluxQL 查询CREATE DATABASECREATE RETENTION POLICYALTER RETENTION POLICYSHOW RETENTION POLICIES

Chronograf 中需要此权限的页面:管理员页面上的仪表板、数据浏览器和数据库

CreateUserAndRole

管理用户和角色的权限; 创建用户、删除用户、授予用户管理员身份、授予用户权限、撤销用户的管理员身份、撤销用户的权限、更改用户密码、查看用户权限以及查看用户及其管理员身份。

相关 InfluxQL 查询CREATE USERDROP USERGRANT ALL PRIVILEGESGRANT [READ,WRITE,ALL]REVOKE ALL PRIVILEGESREVOKE [READ,WRITE,ALL]SET PASSWORDSHOW GRANTSSHOW USERS

Chronograf 中需要此权限的页面:管理员页面上的数据浏览器、仪表板、用户和角色

DropData

删除数据的权限,特别是 序列测量

相关 InfluxQL 查询DROP SERIESDELETEDROP MEASUREMENT

Chronograf 中需要此权限的页面:NA

DropDatabase

删除数据库和保留策略的权限。

相关 InfluxQL 查询DROP DATABASEDROP RETENTION POLICY

Chronograf 中需要此权限的页面:管理员页面上的数据浏览器、仪表板、数据库

KapacitorAPI

访问 InfluxKapacitor Enterprise 的 API 的权限。 这不包括与配置相关的 API 调用。

Chronograf 中需要此权限的页面:NA

KapacitorConfigAPI

访问 InfluxKapacitor Enterprise 的与配置相关的 API 调用的权限。

Chronograf 中需要此权限的页面:NA

ManageContinuousQuery

创建、删除和查看 连续查询 的权限。

相关 InfluxQL 查询CreateContinuousQueryStatementDropContinuousQueryStatementShowContinuousQueriesStatement

Chronograf 中需要此权限的页面:数据浏览器、仪表板

ManageQuery

查看和终止查询的权限。

相关 InfluxQL 查询SHOW QUERIESKILL QUERY

Chronograf 中需要此权限的页面:管理员页面上的查询

ManageShard

复制、删除和查看 分片 的权限。

相关 InfluxQL 查询DropShardStatementShowShardGroupsStatementShowShardsStatement

Chronograf 中需要此权限的页面:NA

ManageSubscription

创建、删除和查看 订阅 的权限。

相关 InfluxQL 查询CREATE SUBSCRIPTIONDROP SUBSCRIPTIONSHOW SUBSCRIPTIONS

Chronograf 中需要此权限的页面:警报

Monitor

查看集群统计信息和诊断信息的权限。

相关 InfluxQL 查询SHOW DIAGNOSTICSSHOW STATS

Chronograf 中需要此权限的页面:数据浏览器、仪表板

ReadData

读取数据的权限。

相关 InfluxQL 查询SHOW FIELD KEYSSHOW MEASUREMENTSSHOW SERIESSHOW TAG KEYSSHOW TAG VALUESSHOW RETENTION POLICIES

Chronograf 中需要此权限的页面:管理员、警报、仪表板、数据浏览器、主机列表

WriteData

写入数据的权限。

相关 InfluxQL 查询:NA

Chronograf 中需要此权限的页面:NA

角色

角色是权限组。 将角色分配给一个或多个用户。

要创建角色,请执行以下操作

  1. 单击左侧导航栏中的 管理员。 您将进入 InfluxDB 管理员页面。
  2. 选择 角色 选项卡。
  3. 单击 + 创建角色
  4. 为角色命名。
  5. 单击 创建
  6. 用户 部分中为角色分配用户
  7. 权限 部分中为角色添加权限。 您将看到数据库列表以及该数据库的所有权限。 选择您想要为角色设置的权限。
  8. 单击 应用更改

具有所有权限的角色将出现在列表中。


此页面是否对您有帮助?

感谢您的反馈!


Flux 的未来

Flux 即将进入维护模式。 您可以继续像现在一样使用它,而无需对代码进行任何更改。

阅读更多

现已正式发布

InfluxDB 3 Core 和 Enterprise

快速启动。更快扩展。

获取更新

InfluxDB 3 Core 是一款开源、高速、最新的数据引擎,可实时收集和处理数据,并将其持久化到本地磁盘或对象存储。 InfluxDB 3 Enterprise 基于 Core 的基础构建,增加了高可用性、读取副本、增强的安全性以及数据压缩,从而实现更快的查询和优化的存储。 InfluxDB 3 Enterprise 的免费层级可供非商业家庭或业余爱好者使用。

有关更多信息,请查看