[ 
https://issues.apache.org/jira/browse/SOLR-4470?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13935185#comment-13935185
 ] 

Jan Høydahl commented on SOLR-4470:
-----------------------------------

In {{SolrServer.java}} this patch adds the following new public methods:

{noformat}
public UpdateResponse add(Collection<SolrInputDocument> docs, int 
commitWithinMs, AuthCredentials authCredentials) throws SolrServerException, 
IOException {
public UpdateResponse addBeans(Collection<?> beans, int commitWithinMs, 
AuthCredentials authCredentials) throws SolrServerException, IOException {
public UpdateResponse add(SolrInputDocument doc, int commitWithinMs, 
AuthCredentials authCredentials) throws SolrServerException, IOException {
public UpdateResponse commit( boolean waitFlush, boolean waitSearcher, boolean 
softCommit, AuthCredentials authCredentials ) throws SolrServerException, 
IOException {
public UpdateResponse optimize(boolean waitFlush, boolean waitSearcher, int 
maxSegments, AuthCredentials authCredentials ) throws SolrServerException, 
IOException {
public UpdateResponse rollback(AuthCredentials authCredentials) throws 
SolrServerException, IOException {
public UpdateResponse deleteById(String id, int commitWithinMs, AuthCredentials 
authCredentials) throws SolrServerException, IOException {
public UpdateResponse deleteById(List<String> ids, int commitWithinMs, 
AuthCredentials authCredentials) throws SolrServerException, IOException {
public UpdateResponse deleteByQuery(String query, int commitWithinMs, 
AuthCredentials authCredentials) throws SolrServerException, IOException {
public SolrPingResponse ping(AuthCredentials authCredentials) throws 
SolrServerException, IOException {
public QueryResponse query(SolrParams params, METHOD method, AuthCredentials 
authCredentials) throws SolrServerException {
public QueryResponse queryAndStreamResponse( SolrParams params, 
StreamingResponseCallback callback, AuthCredentials authCredentials ) throws 
SolrServerException, IOException
{noformat}

We discussed it earlier in this issue and I believe we then concluded that we 
could keep them as protected for now not to inflate the public API surface in a 
non-scalable way. If no objections, I'll make these protected.

Also the new patch removes some unrelated changes which were done in a separate 
JIRA (SOLR-5863).

[~steff1193] If you find the time to report the FIXME's, that would be great.

> Support for basic http auth in internal solr requests
> -----------------------------------------------------
>
>                 Key: SOLR-4470
>                 URL: https://issues.apache.org/jira/browse/SOLR-4470
>             Project: Solr
>          Issue Type: New Feature
>          Components: clients - java, multicore, replication (java), SolrCloud
>    Affects Versions: 4.0
>            Reporter: Per Steffensen
>            Assignee: Jan Høydahl
>              Labels: authentication, https, solrclient, solrcloud, ssl
>             Fix For: 5.0
>
>         Attachments: SOLR-4470.patch, SOLR-4470.patch, SOLR-4470.patch, 
> SOLR-4470.patch, SOLR-4470.patch, SOLR-4470.patch, SOLR-4470.patch, 
> SOLR-4470.patch, SOLR-4470.patch, SOLR-4470.patch, SOLR-4470.patch, 
> SOLR-4470_branch_4x_r1452629.patch, SOLR-4470_branch_4x_r1452629.patch, 
> SOLR-4470_branch_4x_r1454444.patch, SOLR-4470_trunk_r1568857.patch
>
>
> We want to protect any HTTP-resource (url). We want to require credentials no 
> matter what kind of HTTP-request you make to a Solr-node.
> It can faily easy be acheived as described on 
> http://wiki.apache.org/solr/SolrSecurity. This problem is that Solr-nodes 
> also make "internal" request to other Solr-nodes, and for it to work 
> credentials need to be provided here also.
> Ideally we would like to "forward" credentials from a particular request to 
> all the "internal" sub-requests it triggers. E.g. for search and update 
> request.
> But there are also "internal" requests
> * that only indirectly/asynchronously triggered from "outside" requests (e.g. 
> shard creation/deletion/etc based on calls to the "Collection API")
> * that do not in any way have relation to an "outside" "super"-request (e.g. 
> replica synching stuff)
> We would like to aim at a solution where "original" credentials are 
> "forwarded" when a request directly/synchronously trigger a subrequest, and 
> fallback to a configured "internal credentials" for the 
> asynchronous/non-rooted requests.
> In our solution we would aim at only supporting basic http auth, but we would 
> like to make a "framework" around it, so that not to much refactoring is 
> needed if you later want to make support for other kinds of auth (e.g. digest)
> We will work at a solution but create this JIRA issue early in order to get 
> input/comments from the community as early as possible.



--
This message was sent by Atlassian JIRA
(v6.2#6252)

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

Reply via email to