mneethiraj commented on code in PR #410: URL: https://github.com/apache/ranger/pull/410#discussion_r1830508529
########## agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java: ########## @@ -1512,4 +1504,27 @@ private List<RangerConditionEvaluator> createPolicyConditionEvaluators(RangerPol return ret; } + private static boolean isMatchForResourceMatchingScope(final RangerAccessRequest.ResourceMatchingScope scope, final RangerPolicyResourceMatcher.MatchType matchType, boolean isAnyMatch) { + boolean ret = false; + if (isAnyMatch){ + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; + } + else if (scope!=null) { + switch (scope) { + case SELF_OR_DESCENDANTS: { + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; + break; + } + case SELF_AND_ALL_DESCENDANTS: { + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; + break; + } + default: { + ret = matchType == RangerPolicyResourceMatcher.MatchType.SELF || matchType == RangerPolicyResourceMatcher.MatchType.SELF_AND_ALL_DESCENDANTS; + break; + } + } + } Review Comment: when scope is null, shouldn't the return be true if matchType is SELF or SELF_AND_ALL_DESCENDANTS? ########## agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java: ########## @@ -1512,4 +1504,27 @@ private List<RangerConditionEvaluator> createPolicyConditionEvaluators(RangerPol return ret; } + private static boolean isMatchForResourceMatchingScope(final RangerAccessRequest.ResourceMatchingScope scope, final RangerPolicyResourceMatcher.MatchType matchType, boolean isAnyMatch) { + boolean ret = false; + if (isAnyMatch){ + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; + } + else if (scope!=null) { + switch (scope) { + case SELF_OR_DESCENDANTS: { + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; Review Comment: when scope is SELF_OR_DESCENDENTS, is it okay to return true when matchType is ANCESTOR? ########## agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java: ########## @@ -1512,4 +1504,27 @@ private List<RangerConditionEvaluator> createPolicyConditionEvaluators(RangerPol return ret; } + private static boolean isMatchForResourceMatchingScope(final RangerAccessRequest.ResourceMatchingScope scope, final RangerPolicyResourceMatcher.MatchType matchType, boolean isAnyMatch) { + boolean ret = false; + if (isAnyMatch){ + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; + } + else if (scope!=null) { + switch (scope) { + case SELF_OR_DESCENDANTS: { + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; + break; + } + case SELF_AND_ALL_DESCENDANTS: { + ret = matchType != RangerPolicyResourceMatcher.MatchType.NONE; Review Comment: shouldn't matchType be SELF_AND_ALL_DESCENDENTS here? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: dev-unsubscr...@ranger.apache.org For queries about this service, please contact Infrastructure at: us...@infra.apache.org