ES(Elasticsearch)8.x 以上启用自动安全配置,手动安全配置
在Elasticsearch 8.0及以上版本,安全功能默认是启用的,但是在新安装或者升级后,Elasticsearch可能会提示你进行初始化设置。这包括设置内置用户密码,以及其他安全配置。
如果你需要手动进行安全配置,可以使用Elasticsearch提供的APIs来设置用户、角色、权限等。
以下是一些基本的命令,用于设置内置用户密码和创建新用户:
- 设置内置用户(如elastic, kibana, logstash\_system等)的密码:
curl -X POST "localhost:9200/_security/user/elastic/_password" -H "Content-Type: application/json" -d '{
"password" : "newpassword"
}'
- 创建一个新用户:
curl -X POST "localhost:9200/_security/user/new_user" -H "Content-Type: application/json" -d '{
"password" : "new_password",
"roles" : [ "superuser" ],
"full_name" : "New User",
"email" : "new_user@example.com"
}'
- 为用户分配角色:
curl -X PUT "localhost:9200/_security/role/my_role" -H "Content-Type: application/json" -d '{
"cluster_permissions": [ "monitor" ],
"index_permissions": {
"my_index": [ "read", "write" ]
}
}'
- 将角色分配给用户:
curl -X PUT "localhost:9200/_security/user/my_user" -H "Content-Type: application/json" -d '{
"roles" : [ "my_role" ]
}'
请注意,这些命令需要在Elasticsearch配置了安全特性的情况下运行,并且需要有足够的权限来执行这些操作。在生产环境中,应该使用更加严格的权限管理策略,并且可能需要结合Elasticsearch的安全插件(如Elasticsearch Security)来进行更复杂的配置和管理。
评论已关闭