从 solr documentation 创建用户,我需要将以下行添加到
security.json
配置文件:
"authentication":{
"class":"solr.BasicAuthPlugin",
"credentials":{
"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0= Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="
}
},
我知道在
authentication.credentials
下,键 solr
是用户名,值 IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0= Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c=
是密码的哈希值 SolrRocks
。
但我的问题是,如何生成该哈希?
文档没有在任何地方提到它,
它看起来不像
md5
、sha1
、argon
,也不像我所知的任何哈希。那是什么类型的哈希,如何从 bash 创建它?
您通常会 在身份验证 API 中使用
set-user
来添加用户。
GitHub 上的 rmchow 为 bash 创建了独立版本:
#!/bin/bash
PW=$1
SALT=$(pwgen 48 -1)
echo "hash : $(echo -n "$SALT$PW" | sha256sum -b | xxd -r -p | sha256sum -b | xxd -r -p | base64 -w 1024) $(echo -n "$SALT" | base64 -w1024)"