Zookeeper 使用证书身份验证插件访问Solr 9失败

ymzxtsji  于 2023-09-28  发布在  Apache
关注(0)|答案(1)|浏览(159)

我目前正在建立一个新的Solr 9(确切地说是9.2)集群。到目前为止,我有2个Solr节点,一个外部ZooKeeper,我的索引中有文档。
一旦我有了工作,我转移到启用HTTPS(与自签名证书),这也工作得很好。
最后一步是使用(新的)Certificate Authentication Plugin来保护Solr访问
我用该页面的示例编辑了我的security.json,即:

"authentication": {
        "class": "org.apache.solr.security.CertAuthPlugin"
    },
    "authorization": {
        "class": "solr.RuleBasedAuthorizationPlugin",
        "permissions": [
            {
                "name": "all",
                "role": [
                    "admin-role"
                ]
            }
        ],
        "user-role": {
            "CN=B---1,O=---CA,S=NY,C=US": [
                "admin-role"
            ]
        }
    }
  • (以上部分字段已编辑为隐私)*

上传到ZooKeeper并重新启动我的Solr节点。
只有在Solr管理员UI中出现下一个错误时才被授予:

在浏览器上玩了一会儿后,我也得到了这个错误,这没有得到我的任何地方

尝试通过Postman执行SELECT,不幸的是也返回错误:
错误401需要证书

HTTP ERROR 401需要证书

URI:/solr/documents/select STATUS:401信息:需要证书SERVLET:默认
尽管我确实看到证书确实附在请求中。

有人有这方面的经验吗?有没有发现我做错了什么?不幸的是,文档并没有对这个主题进行详细说明,更不用说故障排除了。
谢谢你,谢谢

v09wglhw

v09wglhw1#

结果是我必须在solr.in.cmd中设置下一个变量:set SOLR_SSL_WANT_CLIENT_AUTH=true一旦我这样做了,它开始在Postman中正确响应(虽然在试图访问Solr Admin UI时不在浏览器中)
它似乎是必需的,以便它“听”,或者更确切地说,接受证书。
如在:https://solr.apache.org/guide/solr/latest/deployment-guide/enabling-ssl.html#set-common-ssl-related-system-properties(在客户端身份验证设置警告中)

相关问题