I'm running Oracle JDK 1.8.0_162 and NiFi should be using SolrJ 6.2.0 [1].

Not sure if it is worth trying to upgrade, but the 1.7.0 release
re-factored how the kerberos auth is handled for the Solr processors
so that it no longer relies on the JAAS configuration [2]. It's
possible that could resolve your issue, but hard to say.

[1] 
https://github.com/apache/nifi/blob/rel/nifi-1.6.0/nifi-nar-bundles/nifi-solr-bundle/nifi-solr-processors/pom.xml#L26
[2] https://issues.apache.org/jira/browse/NIFI-5148

On Mon, Oct 15, 2018 at 1:00 PM Dan Caulfield <dan.caulfi...@gm.com> wrote:
>
> Yes, curl works fine.  Just out of curiosity, what version of java are you 
> running?  Does anyone know which version of SolrJ is using the the 1.6 
> putsolrcontentstream?
>
> -----Original Message-----
> From: Bryan Bende [mailto:bbe...@gmail.com]
> Sent: Friday, October 12, 2018 2:08 PM
> To: users@nifi.apache.org
> Subject: [EXTERNAL] Re: putsolrcontentstream and kerberos
>
> I've only done it against Solr cloud, but I don't know a reason why it 
> wouldn't work against standalone Solr.
>
> Nothing is jumping out at me as being wrong with your config. My JAAS config 
> was the following:
>
> SolrJClient {
>   com.sun.security.auth.module.Krb5LoginModule required
>   useKeyTab=true
>   keyTab="/Users/bbende/Projects/docker-kdc/krb5.keytab"
>   storeKey=true
>   useTicketCache=false
>   debug=true
>   principal="n...@solr.org";
> };
>
> Can you successfully access Solr from a curl command?
>
> curl --negotiate -u :
> "http://vmsol001.epg.nam.gm.com:8983/solr/collection1/select";
>
> Assuming you did a kinit first.
>
> On Fri, Oct 12, 2018 at 2:48 PM Dan Caulfield <dan.caulfi...@gm.com> wrote:
> >
> > When attempting to use the putsolrcontentstream (Version 1.6.0) to load 
> > json file into a Solr 6.3 cluster that requires Kerberos authentication.
> >
> >
> >
> > I have set the -D
> > java.security.auth.login.config=/disk-1/nifi/jaas/jaas.conf
> >
> >
> >
> > And the jass file looks like this -
> >
> > MicroServicesSolrClient {
> >
> >   com.sun.security.auth.module.Krb5LoginModule required
> >
> >   useKeyTab=true
> >
> >   storeKey=true
> >
> >   keyTab="/disk-1/nifi/keytabs/MSSolrClient"
> >
> >   serviceName="solr"
> >
> >   principal="mssolru...@xxxxx.gm.com";
> >
> > };
> >
> > GMASTSolrClient {
> >
> >   com.sun.security.auth.module.Krb5LoginModule required
> >
> >   useKeyTab=true
> >
> >   storeKey=true
> >
> >   useTicketCache=true
> >
> >   debug=true
> >
> >   keyTab="/disk-1/nifi/keytabs/GMSolrClient"
> >
> >   serviceName="solr"
> >
> >   principal="gmsolru...@xxxxx.gm.com";
> >
> > };
> >
> >
> >
> > The Processor is set to –
> >
> > Solr Type – Standard
> >
> > Solr Location - http://vmsol001.epg.nam.gm.com:8983/solr/collection1/
> >
> > Content Stream Path - /update/json/docs
> >
> > Content-Type – application/json
> >
> > JAAS Client App Name – GMASTSolrClient
> >
> >
> >
> > Does the 1.6 version of the PutSolrContentStream support Kerberos?  We
> > are getting the 401 authentication error -
> >
> >
> >
> >
> >
> > 198730787914459,size=119100] to Solr due to
> > org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:
> > Error from server at http://vmsol001.epg.nam.gm.com:8983/solr:
> > 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 Authentication required</title>
> >
> > </head>
> >
> > <body><h2>HTTP ERROR 401</h2>
> >
> > <p>Problem accessing /solr/select. Reason:
> >
> > <pre>    Authentication required</pre></p>
> >
> > </body>
> >
> > </html>
> >
> > ; routing to failure:
> > org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:
> > Error from server at http://vmsol001.epg.nam.gm.com:8983/solr:
> > 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 Authentication required</title>
> >
> > </head>
> >
> > <body><h2>HTTP ERROR 401</h2>
> >
> > <p>Problem accessing /solr/select. Reason:
> >
> > <pre>    Authentication required</pre></p>
> >
> > </body>
> >
> > </html>
> >
> >
> >
> > org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:
> > Error from server at http://vmsol001.epg.nam.gm.com:8983/solr:
> > 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 Authentication required</title>
> >
> > </head>
> >
> > <body><h2>HTTP ERROR 401</h2>
> >
> > org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException:
> > Error from server at http://vmsol001.epg.nam.gm.com:8983/solr:
> > 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 Authentication required</title>
> >
> > </head>
> >
> > <body><h2>HTTP ERROR 401</h2>
> >
> > <p>Problem accessing /solr/select. Reason:
> >
> > <pre>    Authentication required</pre></p>
> >
> > </body>
> >
> > </html>
> >
> >
> >
> >         at
> > org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSol
> > rClient.java:560)
> >
> >         at
> > org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClien
> > t.java:261)
> >
> >         at
> > org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClien
> > t.java:250)
> >
> >         at
> > org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:149)
> >
> >         at
> > org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:166)
> >
> >         at
> > org.apache.nifi.processors.solr.PutSolrContentStream$1.process(PutSolr
> > ContentStream.java:242)
> >
> >         at
> > org.apache.nifi.controller.repository.StandardProcessSession.read(Stan
> > dardProcessSession.java:2207)
> >
> >         at
> > org.apache.nifi.controller.repository.StandardProcessSession.read(Stan
> > dardProcessSession.java:2175)
> >
> >         at
> > org.apache.nifi.processors.solr.PutSolrContentStream.onTrigger(PutSolr
> > ContentStream.java:199)
> >
> >         at
> > org.apache.nifi.processor.AbstractProcessor.onTrigger(AbstractProcesso
> > r.java:27)
> >
> >         at
> > org.apache.nifi.controller.StandardProcessorNode.onTrigger(StandardPro
> > cessorNode.java:1147)
> >
> >         at
> > org.apache.nifi.controller.tasks.ConnectableTask.invoke(ConnectableTas
> > k.java:175)
> >
> >         at
> > org.apache.nifi.controller.scheduling.TimerDrivenSchedulingAgent$1.run
> > (TimerDrivenSchedulingAgent.java:117)
> >
> >         at
> > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511
> > )
> >
> >         at
> > java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
> >
> >         at
> > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.a
> > ccess$301(ScheduledThreadPoolExecutor.java:180)
> >
> >         at
> > java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.r
> > un(ScheduledThreadPoolExecutor.java:294)
> >
> >         at
> > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.j
> > ava:1149)
> >
> >         at
> > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.
> > java:624)
> >
> >         at java.lang.Thread.run(Thread.java:748)
> >
> >
> > Dan Caulfield
> > Hyper Scale Engineer
> >
> > GM – NA Information Technology – Hyper Scale Data Solutions
> >
> > dan.caulfi...@gm.com
> >
> >
> >
> >
> >
> > Nothing in this message is intended to constitute an electronic signature 
> > unless a specific statement to the contrary is included in this message.
> >
> > Confidentiality Note: This message is intended only for the person or 
> > entity to which it is addressed. It may contain confidential and/or 
> > privileged material. Any review, transmission, dissemination or other use, 
> > or taking of any action in reliance upon this message by persons or 
> > entities other than the intended recipient is prohibited and may be 
> > unlawful. If you received this message in error, please contact the sender 
> > and delete it from your computer.
>
>
> Nothing in this message is intended to constitute an electronic signature 
> unless a specific statement to the contrary is included in this message.
>
> Confidentiality Note: This message is intended only for the person or entity 
> to which it is addressed. It may contain confidential and/or privileged 
> material. Any review, transmission, dissemination or other use, or taking of 
> any action in reliance upon this message by persons or entities other than 
> the intended recipient is prohibited and may be unlawful. If you received 
> this message in error, please contact the sender and delete it from your 
> computer.

Reply via email to