You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by no...@apache.org on 2017/06/01 04:15:37 UTC
lucene-solr:master: SOLR-10793: BlobHandler should have a well-known
permission name
Repository: lucene-solr
Updated Branches:
refs/heads/master 82f2a3539 -> 4a378eb0a
SOLR-10793: BlobHandler should have a well-known permission name
Project: http://git-wip-us.apache.org/repos/asf/lucene-solr/repo
Commit: http://git-wip-us.apache.org/repos/asf/lucene-solr/commit/4a378eb0
Tree: http://git-wip-us.apache.org/repos/asf/lucene-solr/tree/4a378eb0
Diff: http://git-wip-us.apache.org/repos/asf/lucene-solr/diff/4a378eb0
Branch: refs/heads/master
Commit: 4a378eb0ad9963579ebc45e4b3755f378e7500cc
Parents: 82f2a35
Author: Noble Paul <no...@apache.org>
Authored: Thu Jun 1 13:44:02 2017 +0930
Committer: Noble Paul <no...@apache.org>
Committed: Thu Jun 1 13:44:02 2017 +0930
----------------------------------------------------------------------
solr/CHANGES.txt | 2 ++
.../java/org/apache/solr/handler/BlobHandler.java | 18 +++++++++++++++++-
2 files changed, 19 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4a378eb0/solr/CHANGES.txt
----------------------------------------------------------------------
diff --git a/solr/CHANGES.txt b/solr/CHANGES.txt
index 98f3ec2..e52cf17 100644
--- a/solr/CHANGES.txt
+++ b/solr/CHANGES.txt
@@ -203,6 +203,8 @@ Other Changes
* SOLR-10757: delete/refactor/cleanup CollectionAdminRequest deprecations (hossman)
+* SOLR-10793: BlobHandler should have a well-known permission name (noble)
+
================== 6.7.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.
http://git-wip-us.apache.org/repos/asf/lucene-solr/blob/4a378eb0/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
----------------------------------------------------------------------
diff --git a/solr/core/src/java/org/apache/solr/handler/BlobHandler.java b/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
index 052fcfe..93cf80c 100644
--- a/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
+++ b/solr/core/src/java/org/apache/solr/handler/BlobHandler.java
@@ -54,6 +54,8 @@ import org.apache.solr.request.SolrRequestInfo;
import org.apache.solr.response.SolrQueryResponse;
import org.apache.solr.schema.FieldType;
import org.apache.solr.search.QParser;
+import org.apache.solr.security.AuthorizationContext;
+import org.apache.solr.security.PermissionNameProvider;
import org.apache.solr.update.AddUpdateCommand;
import org.apache.solr.update.CommitUpdateCommand;
import org.apache.solr.update.processor.UpdateRequestProcessor;
@@ -69,8 +71,9 @@ import static org.apache.solr.common.params.CommonParams.JSON;
import static org.apache.solr.common.params.CommonParams.SORT;
import static org.apache.solr.common.params.CommonParams.VERSION;
import static org.apache.solr.common.util.Utils.makeMap;
+import static org.apache.solr.security.PermissionNameProvider.Name.UPDATE_PERM;
-public class BlobHandler extends RequestHandlerBase implements PluginInfoInitialized {
+public class BlobHandler extends RequestHandlerBase implements PluginInfoInitialized , PermissionNameProvider {
private static final Logger log = LoggerFactory.getLogger(MethodHandles.lookup().lookupClass());
private static final long DEFAULT_MAX_SIZE = 5 * 1024 * 1024; // 5MB
@@ -293,4 +296,17 @@ public class BlobHandler extends RequestHandlerBase implements PluginInfoInitial
public Collection<Api> getApis() {
return ApiBag.wrapRequestHandlers(this, "core.system.blob", "core.system.blob.upload");
}
+
+ @Override
+ public Name getPermissionName(AuthorizationContext ctx) {
+ switch (ctx.getHttpMethod()) {
+ case "GET":
+ return Name.READ_PERM;
+ case "POST":
+ return Name.UPDATE_PERM;
+ default:
+ return null;
+ }
+
+ }
}