[
https://issues.apache.org/jira/browse/SOLR-9779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15672191#comment-15672191
]
Kevin Risden commented on SOLR-9779:
------------------------------------
[~wiredcity11] - I was looking into this and was curious if this approach could
work for you:
https://gist.github.com/risdenk/e39bd75321f5b6d0c338febac8b67bd4
This is an example of a BasicAuthSolrClientCache. You could use it like so:
{code}
StreamFactory factory = new
StreamFactory().withDefaultZkHost(solrConfig.getConnectString());
StreamExpression expression = StreamExpressionParser.parse("search(" +
COLLECTIONORALIAS + ", q=*:*, fl=\"id,a_s,a_i,a_f\", sort=\"a_f asc, a_i
asc\")");
CloudSolrStream stream = new CloudSolrStream(expression, factory);
StreamContext streamContext = new StreamContext();
streamContext.setSolrClientCache(new BasicAuthSolrClientCache("solr",
"SolrRocks"));
stream.setStreamContext(streamContext);
// Open and reach stream...
{code}
> Basic auth in not supported in Streaming Expressions
> ----------------------------------------------------
>
> Key: SOLR-9779
> URL: https://issues.apache.org/jira/browse/SOLR-9779
> Project: Solr
> Issue Type: Improvement
> Security Level: Public(Default Security Level. Issues are Public)
> Components: clients - java, security
> Affects Versions: 6.0
> Reporter: Sandeep Mukherjee
> Labels: features, security
> Fix For: 6.4
>
>
> I'm creating a StreamFactory object like the following code:
> {code}
> new StreamFactory().withDefaultZkHost(solrConfig.getConnectString())
> .withFunctionName("gatherNodes", GatherNodesStream.class);
> {code}
> However once I create the StreamFactory there is no way provided to set the
> CloudSolrClient object which can be used to set Basic Auth headers.
> In StreamContext object there is a way to set the SolrClientCache object
> which keep reference to all the CloudSolrClient where I can set a reference
> to HttpClient which sets the Basic Auth header. However the problem is,
> inside the SolrClientCache there is no way to set your own version of
> CloudSolrClient with BasicAuth enabled.
> I think we should expose method in StreamContext where I can specify
> basic-auth enabled CloudSolrClient to use.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]