在 Kibana 中使用 kibana_system
用户登录并提示 "You do not have permission to access the requested page" 是预期行为,因为 kibana_system
用户是一个系统用户,专门用于 Kibana 与 Elasticsearch 的后台通信,而非普通用户。这个账号不具备登录 Kibana UI 的权限。
解决方法
1. 理解 kibana_system
用户的用途
kibana_system
用户角色:- 该用户在 Elasticsearch 中被分配了
kibana_system
角色。 - 它的权限仅限于管理 Kibana 的内部索引(如
.kibana_*
),用于执行后台任务。
- 该用户在 Elasticsearch 中被分配了
限制:
kibana_system
用户无法直接登录 Kibana UI。如果你需要访问 Kibana,请使用其他拥有适当角色(如kibana_admin
或kibana_user
)的用户。
2. 创建一个新的 Kibana 用户
如果需要登录 Kibana UI,应该创建一个具备适当权限的用户。
步骤 1: 创建用户
使用 elastic
超级用户创建一个新用户:
步骤 2: 使用新用户登录
- 用户名:
kibana_user
- 密码:
user_password
3. 检查用户角色
确保用户拥有以下角色中的一个:
kibana_admin
:允许完全管理 Kibana,包括设置和管理 Saved Objects。kibana_user
:允许访问和使用 Kibana,但无管理权限。
验证用户角色:
返回示例:
4. 验证 kibana_system
配置
尽管 kibana_system
用户无法登录 Kibana UI,但它仍然需要正确配置,以确保 Kibana 与 Elasticsearch 的通信正常。
检查 kibana.yml
中的设置
打开 kibana.yml
文件,确认以下内容:
测试连接
通过 kibana_system
用户验证是否可以正常访问 Elasticsearch:
如果返回 Elasticsearch 的状态信息,则说明配置正确。
5. 检查 Kibana 日志
如果问题仍然存在,可以查看 Kibana 的日志,确认是否存在配置错误或权限问题:
重点检查以下内容:
- 是否有
401 Unauthorized
的错误。 - 是否有关于
kibana_system
用户无法访问的提示。
总结
kibana_system
用户是一个系统用户,不允许登录 Kibana UI。如果你需要访问 Kibana,请创建并使用具备适当权限的用户(如kibana_admin
)。- 检查
kibana_system
用户的配置,以确保它能正常与 Elasticsearch 通信。