summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJon Marius Venstad <jvenstad@yahoo-inc.com>2019-04-30 14:24:13 +0200
committerJon Marius Venstad <jvenstad@yahoo-inc.com>2019-05-02 15:09:09 +0200
commitb896901d16333e3af2a120240c6eeda01f5698ed (patch)
tree2d6a3157718652f2262a16f014e1f407e3f4a43a
parent89d0d7ec8f0eb1013ff66996f5721e5bf6004a59 (diff)
Let ControllerAuthorizationFilter inherit JSRFB directly
-rw-r--r--controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilter.java19
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilterTest.java2
2 files changed, 6 insertions, 15 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilter.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilter.java
index d07ad1ca907..72336b4accf 100644
--- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilter.java
+++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilter.java
@@ -2,12 +2,10 @@
package com.yahoo.vespa.hosted.controller.restapi.filter;
import com.google.inject.Inject;
-import com.yahoo.config.provision.SystemName;
import com.yahoo.jdisc.Response;
import com.yahoo.jdisc.http.HttpRequest;
import com.yahoo.jdisc.http.filter.DiscFilterRequest;
-import com.yahoo.jdisc.http.filter.security.cors.CorsFilterConfig;
-import com.yahoo.jdisc.http.filter.security.cors.CorsRequestFilterBase;
+import com.yahoo.jdisc.http.filter.security.base.JsonSecurityRequestFilterBase;
import com.yahoo.log.LogLevel;
import com.yahoo.vespa.hosted.controller.Controller;
import com.yahoo.vespa.hosted.controller.api.role.Action;
@@ -24,26 +22,19 @@ import java.util.logging.Logger;
*
* @author bjorncs
*/
-public class ControllerAuthorizationFilter extends CorsRequestFilterBase {
+public class ControllerAuthorizationFilter extends JsonSecurityRequestFilterBase {
private static final Logger log = Logger.getLogger(ControllerAuthorizationFilter.class.getName());
private final Enforcer enforcer;
@Inject
- public ControllerAuthorizationFilter(Controller controller,
- CorsFilterConfig corsConfig) {
- this(controller.system(), Set.copyOf(corsConfig.allowedUrls()));
- }
-
- ControllerAuthorizationFilter(SystemName system,
- Set<String> allowedUrls) {
- super(allowedUrls);
- this.enforcer = new Enforcer(system);
+ public ControllerAuthorizationFilter(Controller controller) {
+ this.enforcer = new Enforcer(controller.system());
}
@Override
- public Optional<ErrorResponse> filterRequest(DiscFilterRequest request) {
+ public Optional<ErrorResponse> filter(DiscFilterRequest request) {
try {
Optional<SecurityContext> securityContext = Optional.ofNullable((SecurityContext)request.getAttribute(SecurityContext.ATTRIBUTE_NAME));
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilterTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilterTest.java
index f2b0039750e..a5520b42459 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilterTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/filter/ControllerAuthorizationFilterTest.java
@@ -77,7 +77,7 @@ public class ControllerAuthorizationFilterTest {
}
private static ControllerAuthorizationFilter createFilter(ControllerTester tester) {
- return new ControllerAuthorizationFilter(tester.controller().system(), Set.of("http://localhost"));
+ return new ControllerAuthorizationFilter(tester.controller());
}
private static Optional<AuthorizationResponse> invokeFilter(ControllerAuthorizationFilter filter,