赞
踩
要创建一个只能进行搜索(search)操作的用户,您可以按照以下步骤操作:
使用管理员帐户登录到 Elasticsearch 中。
创建一个新的用户,并将其分配给一个新的角色:
Copy
- POST /_security/user/searchuser
- {
- "password" : "password123",
- "roles" : [ "search_role" ]
- }
上面的命令将创建一个名为 "searchuser" 的新用户,并将其分配给一个名为 "search_role" 的新角色。这个角色只能执行搜索操作,不能进行写入(write)操作。
json
Copy
- POST /_security/role/search_role
- {
- "indices": [
- {
- "names": [ "index_name" ],
- "privileges": [ "read" ],
- "allow_restricted_indices": false
- }
- ]
- }
上面的命令将创建一个名为 "search_role" 的新角色,并将其限制为只能读取名为 "index_name" 的索引。
Copy
GET /index_name/_search
上面的命令将使用新的 "searchuser" 帐户进行搜索操作,由于该帐户只被授予了 "search_role" 角色,因此只能进行搜索操作,不能进行写入操作。
请注意,为了使上述设置生效,您需要启用安全模块,并且需要使用 X-Pack 或者 Elastic Stack 安全功能的开源版本。另外,如果您想要更加精细地控制用户和角色的访问权限,可以参考 Elasticsearch 的官方文档进行深入学习和了解。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。