我们在solr上设置了基本身份验证,但是,credentails出现在Admin Dashboard上。
是否有一种方法可以停止特定的jvm参数(即凭据),还是可以阻止所有jvm参数的出现?
请提出建议
答案 0 :(得分:0)
您很有可能将登录名/密码指定为纯JVM参数,这就是为什么您可以在“管理”页面上看到它的原因。
但是,Solr也具有通过 security.json 文件控制基本身份验证的功能,该文件如下所示:
{
"authentication":{
"blockUnknown": true,
"class":"solr.BasicAuthPlugin",
"credentials":{"solr":"IV0EHq1OnNrj6gvRCwvFwTrZ1+z1oBbnQdiVC3otuq0= Ndd7LKvVBAaZIF0QAVi1ekCfAJXr1GGfLtRUXhgrF8c="}
},
"authorization":{
"class":"solr.RuleBasedAuthorizationPlugin",
"permissions":[{"name":"security-edit",
"role":"admin"}],
"user-role":{"solr":"admin"}
}}
这样做,我们为用户指定名称solr和密码-这是base64编码的字符串“SolrRocks”
。如果您使用的是旧扩展,则应将该文件正确放置在 $ SOLR_HOME 中,如果使用的是SolrCloud,则应将该文件放置在ZooKeeper中。
这样做之后,您将配置基本身份验证,并且密码不会出现在JVM参数上。
当然,这里有一些一般性建议-您需要使用SSL(默认情况下,密码将以纯文本形式发送),还需要保护 securiry.json 文件免于修改/读取。
更多信息-检查官方Solr guide