elasticsearch-users

编辑

如果您使用基于文件的用户身份验证,则可以使用 elasticsearch-users 命令来添加和删除用户、分配用户角色以及管理每个节点的密码。

概要

编辑
bin/elasticsearch-users
([useradd <username>] [-p <password>] [-r <roles>]) |
([list] <username>) |
([passwd <username>] [-p <password>]) |
([roles <username>] [-a <roles>] [-r <roles>]) |
([userdel <username>])

描述

编辑

如果您使用内置的 file 内部 realm,则用户定义在集群中每个节点的本地文件中。

用户名和角色必须至少 1 个字符,且不超过 1024 个字符。它们可以包含字母数字字符(a-zA-Z0-9)、空格、标点符号以及 基本拉丁字符 (ASCII) 块中的可打印符号。不允许前导或尾随空格。

密码的长度必须至少为 6 个字符。

有关更多信息,请参阅 基于文件的用户身份验证

为了确保 Elasticsearch 可以在启动时读取用户和角色信息,请以您用来运行 Elasticsearch 的同一用户身份运行 elasticsearch-users useradd。以 root 或其他用户身份运行该命令会更新 usersusers_roles 文件的权限,并阻止 Elasticsearch 访问它们。

参数

编辑
-a <roles>
如果与 roles 参数一起使用,则将以逗号分隔的角色列表添加到用户。
list
列出在本地节点上向 file realm 注册的用户。如果您还指定了用户名,则该命令会提供该用户的信息。
-p <password>

指定用户的密码。如果您未指定此参数,则该命令会提示您输入密码。

省略 -p 选项以将纯文本密码排除在终端会话的命令历史记录之外。

passwd <username>
重置用户的密码。您可以使用 -p 参数直接指定新密码。
-r <roles>
  • 如果与 useradd 参数一起使用,则定义用户的角色。此选项接受以逗号分隔的角色名称列表,以分配给用户。
  • 如果与 roles 参数一起使用,则从用户中删除以逗号分隔的角色列表。
roles
管理特定用户的角色。您可以在同一命令中组合添加和删除角色,以更改用户的角色。
useradd <username>
将用户添加到您的本地节点。
userdel <username>
从您的本地节点删除用户。

示例

编辑

以下示例将名为 jacknich 的新用户添加到 file realm。此用户的密码为 theshining,并且此用户与 networkmonitoring 角色关联。

bin/elasticsearch-users useradd jacknich -p theshining -r network,monitoring

以下示例列出在本地节点上向 file realm 注册的用户

bin/elasticsearch-users list
rdeniro        : admin
alpacino       : power_user
jacknich       : monitoring,network

用户在左侧列中,其对应的角色在右侧列中列出。

以下示例重置 jacknich 用户的密码

bin/elasticsearch-users passwd jachnich

由于省略了 -p 参数,因此该命令会提示您在交互模式下输入并确认密码。

以下示例从 jacknich 用户中删除 networkmonitoring 角色,并添加 user 角色

bin/elasticsearch-users roles jacknich -r network,monitoring -a user

以下示例删除 jacknich 用户

bin/elasticsearch-users userdel jacknich