elasticsearch账号密码
时间: 2025-05-03 20:18:00 AIGC 浏览: 49
### 配置 Elasticsearch 账号与密码
为了确保安全性和访问控制,在生产环境中通常会启用基本认证功能来保护Elasticsearch集群。这涉及到创建具有适当权限的角色以及相应的用户。
#### 创建角色并分配给用户
通过命令行工具可以方便地管理这些操作。例如,要为特定用户授予`kibana_system`角色以及其他自定义角色(如`test`),可执行如下指令:
```bash
bin/elasticsearch-users useradd kibana_system_user -p my_password -r kibana_system,test
```
此命令将会创建一个名为 `kibana_system_user` 的新用户,并为其设定初始密码 `my_password` 同时赋予指定的角色[^2]。
#### 修改配置文件以应用凭证信息
当完成上述步骤之后,则需更新应用程序连接到Elasticsearch实例所需的配置参数。对于Spring Boot项目而言,可以在`application.yml`中加入必要的身份验证详情:
```yaml
elasticsearch:
rest:
uris: ["http://localhost:9200"]
username: elastic
password: "之前设置的密码"
```
这里指定了目标节点地址、用户名(`elastic`)及其对应的密钥字符串[^3]。
#### 使用 REST API 进行交互时提供凭据
如果打算利用HTTP客户端直接向ES发出请求的话,记得附带上传Base64编码后的认证头字段。下面是一个Python脚本片段展示怎样做这一点:
```python
import base64
from elasticsearch import Elasticsearch
auth_str = f'elastic:{password}'
base64_auth = base64.b64encode(auth_str.encode()).decode()
es_client = Elasticsearch(
hosts=["http://localhost:9200"],
http_auth=(username, password),
)
response = es_client.info()
print(response)
```
这段代码展示了如何构建带有授权信息的Elasticsearch客户端对象,并调用其方法获取关于当前运行中的Elasticsearch版本的信息。
阅读全文
相关推荐




















