2017-02-09 66 views
0

我是新的Solr,我已经部署了一个由3个节点的外部动物园管理员组成的4个节点的SolrCloud集群。我将一个security.json文件部署到限制对群集访问的zookeper。我有2个用户(admin,user1)。SolrCloud 6用户访问/ solr/collection/admin/ping

{ 
"authentication":{ 
"blockUnknown":true, 
"class":"solr.BasicAuthPlugin", 
"credentials":{ 
    "admin”:”asdjboagsdbpnabojfm”, 
    "user1”:”jsidafhoihda0idfhnasndi”}, 
"":{"v":15}}, 
"authorization":{ 
"class":"solr.RuleBasedAuthorizationPlugin", 
"permissions":[ 
    { 
    "name":"all", 
    "role":"admin", 
    "index":1}, 
    { 
    "name":"security-edit", 
    "role":"admin", 
    "index":2}, 
    { 
    "name":"read", 
    "role":"dev", 
    "index":3}, 
    { 
    "name":"update", 
    "role":"dev", 
    "index":4}, 
    { 
    "name":"collection-admin-read", 
    "role":"dev", 
    "index":5}, 
    { 
    "name":"config-read", 
    "role":"dev", 
    "index":6}], 
"user-role":{ 
    "admin":[ 
    "admin", 
    "dev"], 
    "user1":["dev"]}, 
"":{"v":39}} 
} 

当我尝试下面的网址,

curl -u admin:password -k -s "https://solrcloud-01.dfw.3mhis.vm:8080/solr/test/admin/ping?wt=json&indent=on" 

注:测试是2个碎片与每个碎片1个复制的集合。 我得到“200状态确定”的回应,但我当我尝试它作为user1它给了我未经授权的请求。我在这里做错了什么。 另外Solr的版本是6,其中平可根据https://cwiki.apache.org/confluence/display/solr/Implicit+RequestHandlers

回答

0

隐式可用的端点中的一个基本上我得到许可如下到security.json

{ "path":"/admin/ping", 
    "role":"dev", 
    "index":7 
}