为了账号安全,请及时绑定邮箱和手机立即绑定

Easysearch 集群通过 API 进行用户密码重置

标签:
数据库

在日常使用 Easysearch 中,难免会遇到集群密码需要重置的情况(如密码遗失、安全审计要求等)。

通过查看 Easysearch 用户接口文档,创建用户使用如下接口:


PUT _security/user/<username>

{

"password": "adminpass",

"roles": ["maintenance_staff", "weapons"],

"external_roles": ["captains", "starfleet"],

"attributes": {

"attribute1": "value1",

"attribute2": "value2"

}

}

同样可以通过该接口对用户进行密码重置:


PUT _security/user/<username>

{

"password": "adminpass111",

"roles": ["maintenance_staff", "weapons"],

"external_roles": ["captains", "starfleet"],

"attributes": {

"attribute1": "value1",

"attribute2": "value2"

}

API 接口创建的用户

创建一个测试用户 test,并进行访问验证。

通过接口重置用户 test 密码,并进行访问验证。

配置文件创建的用户

在配置文件 user.yml 中添加测试用户(test1、test2)配置:


## Test users

test1:

hash: "$2y$12$ZNfKKCeeRQXOWX27W50tbu0Tq4NT4ADdCQOBoZzokI1zR8ZEUWm4W"  # test1

reserved: true

roles:

- "readall_and_monitor"

  

test2:

hash: "$2y$12$m4/eSiDlzRII87vNeKwzteEHGpgpbdMr5tRvOfve/xIbEYdC4bU7a"  # test2

reserved: false

roles:

- "readall_and_monitor"

其中 hash 字段是将用户密码哈希出来的值,可通过 bin/hash_password.sh -p "<明文密码>" 生成。

进行用户访问验证。

对 test1、test2 用户进行密码重置。

用户 test1 重置失败,用户 test2 重置成功。用户 test1 重置失败是因为配置了 reserved: true,将用户 test1 指定为内置用户,使用用户 admin 会因为权限无法进行密码重置,那就需要使用有更高权限的管理证书进行密码重置。默认在 Easysearch 集群执行初始化脚本 bin/initialize.sh 时,会在 config 目录下生成证书文件,其中 admin.crtadmin.key 为管理证书。

test1 用户密码重置成功,进行访问验证。

关于 Easysearch

INFINI Easysearch 是一个分布式的搜索型数据库,实现非结构化数据检索、全文检索、向量检索、地理位置信息查询、组合索引查询、多语种支持、聚合分析等。Easysearch 可以完美替代 Elasticsearch,同时添加和完善多项企业级功能。Easysearch 助您拥有简洁、高效、易用的搜索体验。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消