在 Kibana 中配置安全设置
编辑在 Kibana 中配置安全设置编辑
首次启动 Elasticsearch 时,Elastic Stack 安全功能会在您的集群上启用,并且会自动配置 TLS。安全配置过程会为 elastic
用户生成密码,并为 Kibana 生成注册令牌。 启动启用了安全功能的 Elastic Stack,然后在配置过程中注册 Kibana。
然后,您可以以 elastic
用户身份登录 Kibana,以创建其他角色和用户。
当用户未被授权查看索引(例如 Elasticsearch 索引)中的数据时,整个索引将不可访问,并且不会显示在 Kibana 中。
配置安全设置编辑
设置加密密钥,以便会话不会失效。您可以选择配置其他安全设置和身份验证。
-
在
kibana.yml
配置文件中设置xpack.security.encryptionKey
属性。您可以使用任何长度为 32 个字符或更长的文本字符串作为加密密钥。请参阅xpack.security.encryptionKey
。xpack.security.encryptionKey: "something_at_least_32_characters"
Kibana 的报告和已保存对象功能也有加密密钥设置。请分别参阅
xpack.reporting.encryptionKey
和xpack.encryptedSavedObjects.encryptionKey
。 - 可选:配置 Kibana 的会话过期设置。
- 可选:将 Kibana 配置为使用客户端证书对 Elasticsearch 进行身份验证。
- 重启 Kibana。
创建角色和用户编辑
为您的 Kibana 用户配置角色,以控制这些用户可以访问哪些数据。
-
使用内置的
elastic
超级用户身份临时登录 Kibana,以便您可以创建新用户并分配角色。如果您在本地运行 Kibana,请访问https://127.0.0.1:5601
查看登录页面。内置
elastic
用户的密码是在 Elasticsearch 上执行安全配置过程时生成的。如果您需要重置elastic
用户或其他内置用户的密码,请运行elasticsearch-reset-password
工具。 -
要管理 Kibana 中的权限,请打开主菜单,然后单击 堆栈管理 > 角色。内置的
kibana_admin
角色将授予对 Kibana 的访问权限,并具有管理员权限。或者,您可以创建其他角色来授予对 Kibana 的有限访问权限。如果您使用的是默认的本机领域和基本身份验证,请打开主菜单,然后单击 堆栈管理 > 用户 以创建用户并分配角色,或者使用 Elasticsearch 用户管理 API。例如,以下命令创建名为
jacknich
的用户,并为其分配kibana_admin
角色POST /_security/user/jacknich { "password" : "t0pS3cr3t", "roles" : [ "kibana_admin" ] }
有关基本身份验证和对 Kibana 用户进行身份验证的其他方法的更多信息,请参阅 身份验证。
-
授予用户对他们将在 Kibana 中使用的索引的访问权限。
您可以根据需要为 Kibana 用户定义任意数量的不同角色。
例如,创建对特定数据视图具有
read
和view_index_metadata
权限的角色。有关更多信息,请参阅 用户授权。 -
退出 Kibana,并验证您是否可以使用普通用户身份登录。如果您在本地运行 Kibana,请访问
https://127.0.0.1:5601
并输入您已为其分配 Kibana 用户角色的用户的凭据。例如,您可以以用户jacknich
的身份登录。这必须是已分配 Kibana 权限 的用户。Kibana 服务器凭据(内置的
kibana_system
用户)只能由 Kibana 服务器在内部使用。