Elasticsearch security 创建索引
时间: 2023-12-20 18:23:31 浏览: 150
要在Elasticsearch中创建安全索引,需要遵循以下步骤:
1. 启用安全特性:在Elasticsearch.yml文件中启用xpack.security.enabled特性。
2. 添加用户:使用Elasticsearch提供的API创建用户,例如:
```
curl -XPOST -u elastic 'http://localhost:9200/_security/user/john' -H "Content-Type: application/json" -d '
{
"password" : "password",
"roles" : [ "read" ]
}
'
```
这将创建一个名为“john”的用户,密码为“password”,并赋予它“read”角色。
3. 定义角色:使用Elasticsearch提供的API定义角色,例如:
```
curl -XPOST -u elastic 'http://localhost:9200/_security/role/my_role' -H "Content-Type: application/json" -d '
{
"indices" : [
{
"names" : [ "my_index" ],
"privileges" : [ "read" ]
}
]
}
'
```
这将创建一个名为“my_role”的角色,并赋予它“read”权限。
4. 分配角色:将角色分配给用户,例如:
```
curl -XPOST -u elastic 'http://localhost:9200/_security/user/john/_update' -H "Content-Type: application/json" -d '
{
"doc" : {
"roles" : [ "my_role" ]
}
}
'
```
这将将“my_role”角色分配给用户“john”。
5. 创建索引:现在可以创建一个安全索引,例如:
```
curl -XPUT -u john:password 'http://localhost:9200/my_index' -H "Content-Type: application/json" -d '
{
"settings" : {
"index" : {
"number_of_shards" : 1,
"number_of_replicas" : 0
}
},
"mappings" : {
"properties" : {
"message" : { "type" : "text" }
}
}
}
'
```
这将使用用户“john”的凭据创建一个名为“my_index”的索引,并为其定义一个“message”字段。
这些步骤将创建一个安全索引,并允许用户以安全方式访问它。
阅读全文