文档文档

在 Chronograf 中管理 InfluxDB 用户

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

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

禁用的管理功能

如果连接到 InfluxDB OSS v2.xInfluxDB Cloud,所有 InfluxDB 管理功能在 Chronograf 中都将被禁用。 使用 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 "https://127.0.0.1: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-data, add-meta, join, remove-data, remove-meta, 和 leave

Chronograf 中需要此权限的页面: 不适用

CopyShard

复制分片的权限。

相关的 influxd-ctl 参数: copy-shard

Chronograf 中需要此权限的页面: 不适用

CreateDatabase

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

相关的 InfluxQL 查询: CREATE DATABASE, CREATE RETENTION POLICY, ALTER RETENTION POLICY, 和 SHOW RETENTION POLICIES

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

CreateUserAndRole

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

相关的 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 中需要此权限的页面: 管理页面上的数据浏览器、仪表板、用户和角色

DropData

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

相关的 InfluxQL 查询: DROP SERIES, DELETE, 和 DROP MEASUREMENT

Chronograf 中需要此权限的页面: 不适用

DropDatabase

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

相关的 InfluxQL 查询: DROP DATABASEDROP RETENTION POLICY

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

KapacitorAPI

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

Chronograf 中需要此权限的页面: 不适用

KapacitorConfigAPI

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

Chronograf 中需要此权限的页面: 不适用

ManageContinuousQuery

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

相关的 InfluxQL 查询: CreateContinuousQueryStatement, DropContinuousQueryStatement, 和 ShowContinuousQueriesStatement

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

ManageQuery

查看和终止查询的权限。

相关的 InfluxQL 查询: SHOW QUERIESKILL QUERY

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

ManageShard

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

相关的 InfluxQL 查询: DropShardStatement, ShowShardGroupsStatement, 和 ShowShardsStatement

Chronograf 中需要此权限的页面: 不适用

ManageSubscription

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

相关的 InfluxQL 查询: CREATE SUBSCRIPTION, DROP SUBSCRIPTION, 和 SHOW SUBSCRIPTIONS

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

Monitor

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

相关的 InfluxQL 查询: SHOW DIAGNOSTICSSHOW STATS

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

ReadData

读取数据的权限。

相关的 InfluxQL 查询: SHOW FIELD KEYS, SHOW MEASUREMENTS, SHOW SERIES, SHOW TAG KEYS, SHOW TAG VALUES, 和 SHOW RETENTION POLICIES

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

WriteData

写入数据的权限。

相关的 InfluxQL 查询: 不适用

Chronograf 中需要此权限的页面: 不适用

角色

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

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

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

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


此页是否对您有帮助?

感谢您的反馈!


Flux 的未来

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

阅读更多

InfluxDB 3 开源版现已发布公开 Alpha 版

InfluxDB 3 开源版现已可用于 alpha 测试,根据 MIT 或 Apache 2 许可获得许可。

我们正在发布两个产品作为 alpha 版本的一部分。

InfluxDB 3 Core 是我们的新开源产品。 它是用于时间序列和事件数据的最新数据引擎。 InfluxDB 3 Enterprise 是一个商业版本,它建立在 Core 的基础上,增加了历史查询功能、读取副本、高可用性、可伸缩性和细粒度的安全性。

有关如何开始使用的更多信息,请查看