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 2021/09/02 18:56:36 UTC
[ranger] 02/02: RANGER-3377: HDFS plugin performance improvement -
conditionally ignore deny and exception conditions
This is an automated email from the ASF dual-hosted git repository.
madhan pushed a commit to branch ranger-2.2
in repository https://gitbox.apache.org/repos/asf/ranger.git
commit 670567dae68e158f865eef841d8de167e0bbfa63
Author: cao zhiqiang <lf...@163.com>
AuthorDate: Wed Aug 25 23:20:04 2021 -0700
RANGER-3377: HDFS plugin performance improvement - conditionally ignore deny and exception conditions
Signed-off-by: Madhan Neethiraj <ma...@apache.org>
(cherry picked from commit 79f6cdec2cce5d6dc3a8bb72ac2a82329cba7d4a)
(cherry picked from commit 8d617c626b949cdadf8d914259f78d050556cc5d)
---
.../policyevaluator/RangerDefaultPolicyEvaluator.java | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java b/agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java
index b5b859c..8c08d0e 100644
--- a/agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java
+++ b/agents-common/src/main/java/org/apache/ranger/plugin/policyevaluator/RangerDefaultPolicyEvaluator.java
@@ -150,9 +150,17 @@ public class RangerDefaultPolicyEvaluator extends RangerAbstractPolicyEvaluator
denyExceptionEvaluators = Collections.<RangerPolicyItemEvaluator>emptyList();
} else {
allowEvaluators = createPolicyItemEvaluators(policy, serviceDef, options, RangerPolicyItemEvaluator.POLICY_ITEM_TYPE_ALLOW);
- denyEvaluators = createPolicyItemEvaluators(policy, serviceDef, options, RangerPolicyItemEvaluator.POLICY_ITEM_TYPE_DENY);
- allowExceptionEvaluators = createPolicyItemEvaluators(policy, serviceDef, options, RangerPolicyItemEvaluator.POLICY_ITEM_TYPE_ALLOW_EXCEPTIONS);
- denyExceptionEvaluators = createPolicyItemEvaluators(policy, serviceDef, options, RangerPolicyItemEvaluator.POLICY_ITEM_TYPE_DENY_EXCEPTIONS);
+
+ if (ServiceDefUtil.getOption_enableDenyAndExceptionsInPolicies(serviceDef, pluginContext)) {
+ denyEvaluators = createPolicyItemEvaluators(policy, serviceDef, options, RangerPolicyItemEvaluator.POLICY_ITEM_TYPE_DENY);
+ allowExceptionEvaluators = createPolicyItemEvaluators(policy, serviceDef, options, RangerPolicyItemEvaluator.POLICY_ITEM_TYPE_ALLOW_EXCEPTIONS);
+ denyExceptionEvaluators = createPolicyItemEvaluators(policy, serviceDef, options, RangerPolicyItemEvaluator.POLICY_ITEM_TYPE_DENY_EXCEPTIONS);
+ } else {
+ denyEvaluators = Collections.<RangerPolicyItemEvaluator>emptyList();
+ allowExceptionEvaluators = Collections.<RangerPolicyItemEvaluator>emptyList();
+ denyExceptionEvaluators = Collections.<RangerPolicyItemEvaluator>emptyList();
+ }
+
}
dataMaskEvaluators = createDataMaskPolicyItemEvaluators(policy, serviceDef, options, policy.getDataMaskPolicyItems());