diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt index 7b3920e6300..ae5cd8c93cc 100644 --- a/solr/CHANGES.txt +++ b/solr/CHANGES.txt @@ -174,6 +174,12 @@ Bug Fixes * SOLR-7588: Fix javascript bug introduced by SOLR-7409 that breaks the dataimport screen in the admin UI. (Bill Bell via Shawn Heisey) +Other Changes +---------------------- + +* SOLR-7648: Expose remote IP and Host via the AuthorizationContext to be used by the authorization plugin. + (Ishan Chattopadhyaya via Anshum Gupta) + ================== 5.2.0 ================== Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release diff --git a/solr/core/src/java/org/apache/solr/security/AuthorizationContext.java b/solr/core/src/java/org/apache/solr/security/AuthorizationContext.java index 23b4f1ae94d..2ef63f20139 100644 --- a/solr/core/src/java/org/apache/solr/security/AuthorizationContext.java +++ b/solr/core/src/java/org/apache/solr/security/AuthorizationContext.java @@ -44,6 +44,10 @@ public abstract class AuthorizationContext { public abstract Enumeration getHeaderNames(); + public abstract String getRemoteAddr(); + + public abstract String getRemoteHost(); + public abstract List getCollectionRequests() ; public abstract RequestType getRequestType(); diff --git a/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java b/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java index 35f89dd2ddc..dacb93c262c 100644 --- a/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java +++ b/solr/core/src/java/org/apache/solr/servlet/HttpSolrCall.java @@ -50,6 +50,7 @@ import java.util.Set; * limitations under the License. */ + import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -982,6 +983,16 @@ public class HttpSolrCall { response.append("], Path: [").append(resource).append("]"); return response.toString(); } + + @Override + public String getRemoteAddr() { + return getReq().getRemoteAddr(); + } + + @Override + public String getRemoteHost() { + return getReq().getRemoteHost(); + } }; }