I found this in the documentation 
https://lucene.apache.org/solr/guide/8_5/cdcr-architecture.html#cdcr-limitations
 
<https://lucene.apache.org/solr/guide/8_5/cdcr-architecture.html#cdcr-limitations>
 :

        CDCR doesn’t support Basic Authentication features across clusters.

The JIRA for adding this capability is 
https://issues.apache.org/jira/browse/SOLR-11959 
<https://issues.apache.org/jira/browse/SOLR-11959> but it went stale in 2019.
You may add a comment there and hope for some traction, but don’t hold your 
breath...

Jan

> 26. jun. 2020 kl. 06:34 skrev Phatkar, Swapnil (Contractor) 
> <swapnil.phat...@transunion.com.INVALID>:
> 
> Hi,
> 
> CDCR might be deprecated really soon now -->  In this case will it be there 
> any alternate to this. 
> 
> However, if this turns out to be not supported or a bug, then we can file a 
> JIRA issue.  --> it will be great if you raise the JIRA ticket for it. So 
> that we will be more clear that how does it response 
> To such scenario : 1. CDCR with https and JWT authentication   and the 
> necessary settings for it including security.json.
> 
> 
> Thanks 
> Swapnil 
> 
> 
> 
> -----Original Message-----
> From: Jan Høydahl <jan....@cominvent.com> 
> Sent: Thursday, June 25, 2020 6:50 PM
> To: solr-user@lucene.apache.org
> Subject: Re: SOLR CDCR fails with JWT authorization configuration
> 
> EXTERNAL SENDER:   Exercise caution with links and attachments.
> 
> I’m mostly trying to identify whether what you are trying to to is a 
> supported option at all, or of perhaps CDCR is only tested without 
> authentication in place.
> You would also be interested in the fact that CDCR might be deprecated really 
> soon now, see 
> https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_SOLR-2D11718&d=DwIFaQ&c=7gn0PlAmraV3zr-k385KhKAz9NTx0dwockj5vIsr5Sw&r=wQj2B5ci2ikx0AXWDp1ftYhkwteAsJcW-MBY4WoYz1A&m=VnSEvEi02eWt0BicxkJixew62AkT8xPFWcdVyny0UOc&s=xaIigYTYxurNRitDyLsqVfTreB0Kz15mR69HnhGbKSI&e=
>   
> <https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_SOLR-2D11718&d=DwIFaQ&c=7gn0PlAmraV3zr-k385KhKAz9NTx0dwockj5vIsr5Sw&r=wQj2B5ci2ikx0AXWDp1ftYhkwteAsJcW-MBY4WoYz1A&m=VnSEvEi02eWt0BicxkJixew62AkT8xPFWcdVyny0UOc&s=xaIigYTYxurNRitDyLsqVfTreB0Kz15mR69HnhGbKSI&e=
>  > CDCR is complex. JWT is complex. Combining the two might bee too much 
> unknown territory for beginners.
> 
> However, if this turns out to be not supported or a bug, then we can file a 
> JIRA issue. So far I hope that someone else with CDCR can give JWT a try to 
> reproduce what you are seeing.
> 
> Jan
> 
>> 25. jun. 2020 kl. 15:06 skrev Phatkar, Swapnil (Contractor) 
>> <swapnil.phat...@transunion.com.INVALID>:
>> 
>> Hi,
>> 
>> 
>> 1. Solr is relying on PKI for the request (one cluster sends PKI 
>> header to the node in the other cluster)
>> -- > I have not configured anything explicitly. Just followed the steps 
>> mention 
>> @https://urldefense.proofpoint.com/v2/url?u=https-3A__lucene.apache.org_solr_guide_8-5F4_cdcr-2Dconfig.html&d=DwIFaQ&c=7gn0PlAmraV3zr-k385KhKAz9NTx0dwockj5vIsr5Sw&r=wQj2B5ci2ikx0AXWDp1ftYhkwteAsJcW-MBY4WoYz1A&m=VnSEvEi02eWt0BicxkJixew62AkT8xPFWcdVyny0UOc&s=EHiRmseTycUfJdAgsdWoz1qiE9Y3DATFD4qPh0CkSig&e=
>>  . Is there any additional step ?
>> 
>> 2. That fails since the sending node is unknown to the receiving node 
>> since it is in another cluster
>> -->  I think that obvious because Source cluster and Target clusters 
>> --> are different. What I know is once we configure zkhost of Target 
>> --> cluster in Source cluster in solrconfig.xml it establish 
>> --> connection. But I will
>> like to know is there any other setting ?
>> 
>> 3. Have you tried BasicAuth and do you have the same issue then?
>> --> Nope . We were using  "class":"solr.JWTAuthPlugin" . Do I need to add 
>> authorization also to overcome JWT authorization ??
>> 
>> 
>> Can you please guide me considering me as newbie :) . And it will be 
>> also good to get sample security.json
>> 
>> Thanks
>> 
>> -----Original Message-----
>> From: Jan Høydahl <jan....@cominvent.com>
>> Sent: Thursday, June 25, 2020 5:25 PM
>> To: solr-user@lucene.apache.org
>> Subject: Re: SOLR CDCR fails with JWT authorization configuration
>> 
>> EXTERNAL SENDER:   Exercise caution with links and attachments.
>> 
>> Sorry, there is no forwardCredentials parameter for JWT, it is implicit. 
>> 
>> But from the response we can see two things:
>> 
>> 1. Solr is relying on PKI for the request (one cluster sends PKI 
>> header to the node in the other cluster) 2. That fails since the 
>> sending node is unknown to the receiving node since it is in another 
>> cluster
>> 
>> I’m not familiar with the CDCR code used here. Have you tried BasicAuth and 
>> do you have the same issue then?
>> 
>> Jan
>> 
>> 
>>> 25. jun. 2020 kl. 13:20 skrev Phatkar, Swapnil (Contractor) 
>>> <swapnil.phat...@transunion.com.INVALID>:
>>> 
>>> 
>>> 
>>> Whoever is sending calls to /solr/express_shard1_replica_n3/cdcr will have 
>>> to make sure to forward JWT -- How do I forward JWT from source to target 
>>> server ??
>>> You could try 'forwardCredentials:true' in security.json -- How can I try  
>>> this ?
>>> 
>>> Can you suggest me sample security.json which will address my issue mention 
>>> in below mail trail:
>>> 
>>> I have security.json as given below : ( its just the format and 
>>> values are removed as per policy )
>>> 
>>> {
>>> "authentication":{
>>>  "class":"solr.JWTAuthPlugin",
>>>  "blockUnknown":true,
>>>     "requireIss":false,
>>>     "requireExp":false,
>>>     "issuers":[
>>>             {
>>>                     "name":
>>>                     "clientId":
>>>                     "jwk":{
>>>                             "kty":"RSA",
>>>                             "n":
>>>                             "e":
>>>                             "d":
>>>                             "p":
>>>                             "q":
>>>                             "dp":
>>>                             "dq":
>>>                             "qi":
>>>                             "alg":"RS256",
>>>                             "kid":
>>>                             "use":
>>>                     }
>>>             }
>>>     ]
>>> }
>>> }
>>> 
>>> 
>>> 
>>> 
>>> -----Original Message-----
>>> From: Jan Høydahl <jan....@cominvent.com>
>>> Sent: Thursday, June 25, 2020 1:19 PM
>>> To: solr-user@lucene.apache.org
>>> Subject: Re: SOLR CDCR fails with JWT authorization configuration
>>> 
>>> EXTERNAL SENDER:   Exercise caution with links and attachments.
>>> 
>>> Are both clusters setup with the same Identity Provider, so the same JWT 
>>> token would be valid for both clusters?
>>> 
>>> If so, it should be (theoretically) possible to have the clusters talk to 
>>> each other, if you can get them to forward the Authorization header with 
>>> the JWT.
>>> Whoever is sending calls to /solr/express_shard1_replica_n3/cdcr will have 
>>> to make sure to forward JWT and not just rely on PKI.
>>> PKI won’t work since the two clusters have different ZK and Solr by default 
>>> only trust PKI between nodes registered in ZK.
>>> 
>>> You could try 'forwardCredentials:true' in security.json, but I’m not sure 
>>> that is enough here. There may be code changes needed in CDCR components.
>>> 
>>> Jan
>>> 
>>>> 24. jun. 2020 kl. 19:42 skrev Phatkar, Swapnil (Contractor) 
>>>> <swapnil.phat...@transunion.com.INVALID>:
>>>> 
>>>> Hi Team ,
>>>> 
>>>> I am trying to configure CDCR for SOLR 8.4.1 .
>>>> With the provided configuration I can able to replicate the indexes from 
>>>> Source server to Target server. This setup even works with SSL 
>>>> configuration using Https protocol.
>>>> But the moment I have introduced JWT authorization by enforcing 
>>>> security.json on both the server. I got an error at Target server side as 
>>>> shown below.
>>>> Due to which the index were not getting replicated at target server.
>>>> 
>>>> ERROR :
>>>> 
>>>> 0200623 12:29:55.956 [ERROR] {qtp892083096-82} [   ] 
>>>> [org.apache.solr.security.PKIAuthenticationPlugin, 119] |
>>>> Could not decipher a header <SouceIp>:8983_solr $$$$$$$. No 
>>>> principal set
>>>> 
>>>> Caused by: java.util.concurrent.ExecutionException: 
>>>> org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:
>>>> Error from server at
>>>> https://<TargetIP>:8983/solr/express_shard1_replica_n3: Expected 
>>>> mime type application/octet-stream but got text/html. <html> <head> 
>>>> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
>>>> <title>Error 401 Require authentication</title> </head> 
>>>> <body><h2>HTTP ERROR 401</h2> <p>Problem accessing 
>>>> /solr/express_shard1_replica_n3/cdcr. Reason:
>>>> <pre>    Require authentication</pre></p>
>>>> </body>
>>>> </html>
>>>> 
>>>> 
>>>> Caused by: 
>>>> org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: 
>>>> Error from server at
>>>> https://<TargetIP>:8983/solr/express_shard1_replica_n3: Expected 
>>>> mime type application/octet-stream but got text/html. <html> <head> 
>>>> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
>>>> <title>Error 401 Require authentication</title> </head> 
>>>> <body><h2>HTTP ERROR 401</h2> <p>Problem accessing 
>>>> /solr/express_shard1_replica_n3/cdcr. Reason:
>>>> <pre>    Require authentication</pre></p>
>>>> </body>
>>>> </html>
>>>> 
>>>>     at 
>>>> org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:629)
>>>>     at 
>>>> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:265)
>>>>     at 
>>>> org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:248)
>>>>     at 
>>>> org.apache.solr.client.solrj.SolrClient.request(SolrClient.java:1290)
>>>>     at 
>>>> org.apache.solr.handler.CdcrRequestHandler$SliceCheckpointCallable.call(CdcrRequestHandler.java:868)
>>>>     at
>>>> org.apache.solr.handler.CdcrRequestHandler$SliceCheckpointCallable.c
>>>> a
>>>> l
>>>> l(CdcrRequestHandler.java:845)
>>>> 
>>>> 
>>>> Thanks and Regards,
>>>> Swapnil Phatkar
>>>> 9167320216
>>>> 
>>> 
>> 
> 

Reply via email to