You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by ma...@apache.org on 2022/03/04 05:46:32 UTC
[ranger] branch ranger-2.3 updated: RANGER-3652: updated resource-matcher unit tests to include tests for wildcard=false
This is an automated email from the ASF dual-hosted git repository.
madhan pushed a commit to branch ranger-2.3
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/ranger-2.3 by this push:
new 62e9a12 RANGER-3652: updated resource-matcher unit tests to include tests for wildcard=false
62e9a12 is described below
commit 62e9a12c44741474696614421b9137e8e468d234
Author: Madhan Neethiraj <ma...@apache.org>
AuthorDate: Thu Mar 3 20:01:56 2022 -0800
RANGER-3652: updated resource-matcher unit tests to include tests for wildcard=false
(cherry picked from commit 9e5d4ec3e50f0e0d2785bb60e8a81b33a8729b4f)
---
.../RangerDefaultResourceMatcherTest.java | 16 ++++++++++++----
.../resourcematcher/RangerPathResourceMatcherTest.java | 13 +++++++++++--
.../resourcematcher/RangerURLResourceMatcherTest.java | 12 ++++++++++--
3 files changed, 33 insertions(+), 8 deletions(-)
diff --git a/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerDefaultResourceMatcherTest.java b/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerDefaultResourceMatcherTest.java
index c635e0d..ad21b32 100644
--- a/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerDefaultResourceMatcherTest.java
+++ b/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerDefaultResourceMatcherTest.java
@@ -21,6 +21,7 @@ package org.apache.ranger.plugin.resourcematcher;
import com.google.common.collect.Lists;
import org.apache.ranger.plugin.model.RangerPolicy;
+import org.apache.ranger.plugin.model.RangerServiceDef.RangerResourceDef;
import org.apache.ranger.plugin.util.RangerAccessRequestUtil;
import org.junit.Test;
@@ -69,15 +70,22 @@ public class RangerDefaultResourceMatcherTest {
static class MatcherWrapper extends RangerDefaultResourceMatcher {
MatcherWrapper(String policyValue, boolean exclude) {
+ RangerResourceDef resourceDef = new RangerResourceDef();
+ Map<String, String> matcherOptions = new HashMap<>();
+
+ matcherOptions.put(OPTION_WILD_CARD, Boolean.toString(policyValue.contains(WILDCARD_ASTERISK)));
+ matcherOptions.put(OPTION_IGNORE_CASE, Boolean.toString(false));
+
+ resourceDef.setMatcherOptions(matcherOptions);
+
+ setResourceDef(resourceDef);
+
RangerPolicy.RangerPolicyResource policyResource = new RangerPolicy.RangerPolicyResource();
policyResource.setIsExcludes(exclude);
policyResource.setValues(Lists.newArrayList(policyValue));
setPolicyResource(policyResource);
- if (policyValue.contains(WILDCARD_ASTERISK)) {
- this.optWildCard = true;
- }
- this.optIgnoreCase = false;
+
init();
}
}
diff --git a/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerPathResourceMatcherTest.java b/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerPathResourceMatcherTest.java
index 1425027..8fe3be9 100644
--- a/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerPathResourceMatcherTest.java
+++ b/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerPathResourceMatcherTest.java
@@ -21,10 +21,12 @@ package org.apache.ranger.plugin.resourcematcher;
import com.google.common.collect.Lists;
import org.apache.ranger.plugin.model.RangerPolicy;
+import org.apache.ranger.plugin.model.RangerServiceDef.RangerResourceDef;
import org.apache.ranger.plugin.policyengine.RangerAccessRequest;
import org.apache.ranger.plugin.util.RangerAccessRequestUtil;
import org.junit.Test;
+import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -49,6 +51,8 @@ public class RangerPathResourceMatcherTest {
{ "/app/hbase/test.tbl", "/app/hive/test*", true, false, false, "user" },
{ "/app/hive/test.db", "/app/hive/test.db", true, false, true, "user" },
{ "/app/hbase/test.tbl", "/app/hive/test.db", true, false, false, "user" },
+ { "app/hive/*", "app/hive/*", false, false, true, "user" }, // simple string match
+ { "app/hive/test.db", "app/hive/*", false, false, false, "user" }, // simple string match
};
Object[][] dataForSelfOrChildScope = {
@@ -126,7 +130,12 @@ public class RangerPathResourceMatcherTest {
static class MatcherWrapper extends RangerPathResourceMatcher {
MatcherWrapper(String policyValue, boolean optWildcard, boolean isRecursive) {
- super.optWildCard = optWildcard;
+ RangerResourceDef resourceDef = new RangerResourceDef();
+ Map<String, String> matcherOptions = Collections.singletonMap(OPTION_WILD_CARD, Boolean.toString(optWildcard));
+
+ resourceDef.setMatcherOptions(matcherOptions);
+
+ setResourceDef(resourceDef);
RangerPolicy.RangerPolicyResource policyResource = new RangerPolicy.RangerPolicyResource();
policyResource.setIsRecursive(isRecursive);
@@ -134,7 +143,7 @@ public class RangerPathResourceMatcherTest {
setPolicyResource(policyResource);
init();
- }
+ }
}
}
\ No newline at end of file
diff --git a/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerURLResourceMatcherTest.java b/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerURLResourceMatcherTest.java
index 2762932..2b7f272 100644
--- a/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerURLResourceMatcherTest.java
+++ b/agents-common/src/test/java/org/apache/ranger/plugin/resourcematcher/RangerURLResourceMatcherTest.java
@@ -21,9 +21,11 @@ package org.apache.ranger.plugin.resourcematcher;
import com.google.common.collect.Lists;
import org.apache.ranger.plugin.model.RangerPolicy;
+import org.apache.ranger.plugin.model.RangerServiceDef.RangerResourceDef;
import org.apache.ranger.plugin.util.RangerAccessRequestUtil;
import org.junit.Test;
+import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
@@ -36,7 +38,8 @@ public class RangerURLResourceMatcherTest {
{ "hdfs://hostname:8020/app/warehouse/data/emp.db", "hdfs://hostname:8020/app/warehouse/*", true, true, true, "user" },
{ "hdfs://hostname:8020/app/warehouse/data/emp.db", "hdfs://hostname:8020/*", true, true, true, "user" },
{ "hdfs://hostname:8020/app/warehouse/data/emp.db", "hdfs://hostname:8020/app/*", true, false, true, "user" },
- { "hdfs://hostname:8020/app/warehouse/data/emp.db", "hdfs://hostname:8020/app/*", false, false, true, "user" },
+ { "hdfs://hostname:8020/app/warehouse/data/emp.db", "hdfs://hostname:8020/app/*", false, false, false, "user" }, // simple string match
+ { "hdfs://hostname:8020/app/*", "hdfs://hostname:8020/app/*", false, false, true, "user" }, // simple string match
{ "hdfs://hostname:8020/app/warehouse/data/emp.db", "hdfs://hostname:8020/app/", true, true, true, "user" },
{ "s3a://app/warehouse/data/emp.db", "s3a://app/*", true, true, true, "user" },
{ "adls:/app/warehouse/data/emp.db", "adls://app/*", true, true, false, "user" },
@@ -74,7 +77,12 @@ public class RangerURLResourceMatcherTest {
static class MatcherWrapper extends RangerURLResourceMatcher {
MatcherWrapper(String policyValue, boolean optWildcard, boolean isRecursive) {
- super.optWildCard = optWildcard;
+ RangerResourceDef resourceDef = new RangerResourceDef();
+ Map<String, String> matcherOptions = Collections.singletonMap(OPTION_WILD_CARD, Boolean.toString(optWildcard));
+
+ resourceDef.setMatcherOptions(matcherOptions);
+
+ setResourceDef(resourceDef);
RangerPolicy.RangerPolicyResource policyResource = new RangerPolicy.RangerPolicyResource();
policyResource.setIsRecursive(isRecursive);