Alex Deparvu created SOLR-16527:
-----------------------------------

             Summary: RuleBasedAuthorizationPluginBase NPE
                 Key: SOLR-16527
                 URL: https://issues.apache.org/jira/browse/SOLR-16527
             Project: Solr
          Issue Type: Bug
      Security Level: Public (Default Security Level. Issues are Public)
          Components: Authorization
    Affects Versions: 9.0
            Reporter: Alex Deparvu


I set up a SolrCloud with 2 nodes and enabled basic auth following the Solr 
guide 
([https://solr.apache.org/guide/solr/latest/deployment-guide/basic-authentication-plugin.html#enable-basic-authentication]).
{noformat}
ERROR (qtp1527086220-49) [] o.a.s.h.RequestHandlerBase 
java.lang.NullPointerException => java.lang.NullPointerException
at 
org.apache.solr.security.RuleBasedAuthorizationPluginBase.getPermissionNamesForRoles(RuleBasedAuthorizationPluginBase.java:123)
java.lang.NullPointerException: null
at 
org.apache.solr.security.RuleBasedAuthorizationPluginBase.getPermissionNamesForRoles(RuleBasedAuthorizationPluginBase.java:123)
 ~[?:?]
at 
org.apache.solr.handler.admin.SystemInfoHandler.getSecurityInfo(SystemInfoHandler.java:342)
 ~[?:?]
at 
org.apache.solr.handler.admin.SystemInfoHandler.handleRequestBody(SystemInfoHandler.java:153)
 ~[?:?]
{noformat}
Logs seen on the Solr node originating the request:
{noformat}
2022-11-04 09:26:46.251 INFO  (qtp1658512704-126) [] o.a.s.s.HttpSolrCall 
[admin] webapp=null path=/admin/info/system 
params={wt=javabin&version=2&_=1667579206203} status=0 QTime=1
2022-11-04 09:26:46.259 WARN  (qtp1658512704-81) [] 
o.a.s.h.a.AdminHandlersProxy Exception when fetching result from node 
localhost:6564_solr => java.util.concurrent.ExecutionException: 
org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException: Error 
from server at http://localhost:6564/solr: java.lang.NullPointerException
at 
org.apache.solr.security.RuleBasedAuthorizationPluginBase.getPermissionNamesForRoles(RuleBasedAuthorizationPluginBase.java:126)
java.util.concurrent.ExecutionException: 
org.apache.solr.client.solrj.impl.BaseHttpSolrClient$RemoteSolrException: Error 
from server at http://localhost:6564/solr: java.lang.NullPointerException
{noformat}
 

I believe the reason is the 'roles' set is null on inter-node requests so this 
method will throw a NPE 
[https://github.com/apache/solr/blob/26195c82493422cb9d6d4bdf9d4452046e7b3f67/solr/core/src/java/org/apache/solr/security/RuleBasedAuthorizationPluginBase.java#L122]

 

It looks like this was introduced with following commit for SOLR-15776 
[https://github.com/apache/solr/commit/a1406847ba256965e636e05b11e53c0ac696e2a9#diff-83579b1681fbe3ea47f7340796963b034594921405afb41c62d9415f52f5adcfR356]



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to