Repository: ranger
Updated Branches:
  refs/heads/master ce725f500 -> 80c819833


RANGER-2122 : Improvement in ranger yarn and hdfs plugin for additional default 
policy creation feature during service creation

Change-Id: I008416ee6f39dbd7694ca4c73f3425e9d8ecdbbc

Signed-off-by: Mehul Parikh <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/ranger/commit/80c81983
Tree: http://git-wip-us.apache.org/repos/asf/ranger/tree/80c81983
Diff: http://git-wip-us.apache.org/repos/asf/ranger/diff/80c81983

Branch: refs/heads/master
Commit: 80c8198337060b89bbcde05331ca65f7e06a0105
Parents: ce725f5
Author: Nikhil P <[email protected]>
Authored: Wed Jun 6 12:00:45 2018 +0530
Committer: Mehul Parikh <[email protected]>
Committed: Wed Jun 6 19:25:40 2018 +0530

----------------------------------------------------------------------
 .../ranger/services/hdfs/RangerServiceHdfs.java | 38 ++++++++++----------
 .../ranger/services/yarn/RangerServiceYarn.java | 30 ++++++++--------
 2 files changed, 36 insertions(+), 32 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ranger/blob/80c81983/hdfs-agent/src/main/java/org/apache/ranger/services/hdfs/RangerServiceHdfs.java
----------------------------------------------------------------------
diff --git 
a/hdfs-agent/src/main/java/org/apache/ranger/services/hdfs/RangerServiceHdfs.java
 
b/hdfs-agent/src/main/java/org/apache/ranger/services/hdfs/RangerServiceHdfs.java
index 4c9f635..22ecabf 100644
--- 
a/hdfs-agent/src/main/java/org/apache/ranger/services/hdfs/RangerServiceHdfs.java
+++ 
b/hdfs-agent/src/main/java/org/apache/ranger/services/hdfs/RangerServiceHdfs.java
@@ -115,28 +115,30 @@ public class RangerServiceHdfs extends RangerBaseService {
                String pathResourceName = 
RangerHdfsAuthorizer.KEY_RESOURCE_PATH;
 
                for (RangerPolicy defaultPolicy : ret) {
-                       RangerPolicy.RangerPolicyResource pathPolicyResource = 
defaultPolicy.getResources().get(pathResourceName);
-                       if (pathPolicyResource != null) {
-                               List<RangerServiceDef.RangerResourceDef> 
resourceDefs = serviceDef.getResources();
-                               RangerServiceDef.RangerResourceDef 
pathResourceDef = null;
-                               for (RangerServiceDef.RangerResourceDef 
resourceDef : resourceDefs) {
-                                       if 
(resourceDef.getName().equals(pathResourceName)) {
-                                               pathResourceDef = resourceDef;
-                                               break;
+                       if(defaultPolicy.getName().contains("all")){
+                               RangerPolicy.RangerPolicyResource 
pathPolicyResource = defaultPolicy.getResources().get(pathResourceName);
+                               if (pathPolicyResource != null) {
+                                       
List<RangerServiceDef.RangerResourceDef> resourceDefs = 
serviceDef.getResources();
+                                       RangerServiceDef.RangerResourceDef 
pathResourceDef = null;
+                                       for (RangerServiceDef.RangerResourceDef 
resourceDef : resourceDefs) {
+                                               if 
(resourceDef.getName().equals(pathResourceName)) {
+                                                       pathResourceDef = 
resourceDef;
+                                                       break;
+                                               }
                                        }
-                               }
-                               if (pathResourceDef != null) {
-                                       String pathSeparator = 
pathResourceDef.getMatcherOptions().get(RangerPathResourceMatcher.OPTION_PATH_SEPARATOR);
-                                       if (StringUtils.isBlank(pathSeparator)) 
{
-                                               pathSeparator = 
Character.toString(RangerPathResourceMatcher.DEFAULT_PATH_SEPARATOR_CHAR);
+                                       if (pathResourceDef != null) {
+                                               String pathSeparator = 
pathResourceDef.getMatcherOptions().get(RangerPathResourceMatcher.OPTION_PATH_SEPARATOR);
+                                               if 
(StringUtils.isBlank(pathSeparator)) {
+                                                       pathSeparator = 
Character.toString(RangerPathResourceMatcher.DEFAULT_PATH_SEPARATOR_CHAR);
+                                               }
+                                               String value = pathSeparator + 
RangerAbstractResourceMatcher.WILDCARD_ASTERISK;
+                                               
pathPolicyResource.setValue(value);
+                                       } else {
+                                               LOG.warn("No resourceDef found 
in HDFS service-definition for '" + pathResourceName + "'");
                                        }
-                                       String value = pathSeparator + 
RangerAbstractResourceMatcher.WILDCARD_ASTERISK;
-                                       pathPolicyResource.setValue(value);
                                } else {
-                                       LOG.warn("No resourceDef found in HDFS 
service-definition for '" + pathResourceName + "'");
+                                       LOG.warn("No '" + pathResourceName + "' 
found in default policy");
                                }
-                       } else {
-                               LOG.warn("No '" + pathResourceName + "' found 
in default policy");
                        }
                }
 

http://git-wip-us.apache.org/repos/asf/ranger/blob/80c81983/plugin-yarn/src/main/java/org/apache/ranger/services/yarn/RangerServiceYarn.java
----------------------------------------------------------------------
diff --git 
a/plugin-yarn/src/main/java/org/apache/ranger/services/yarn/RangerServiceYarn.java
 
b/plugin-yarn/src/main/java/org/apache/ranger/services/yarn/RangerServiceYarn.java
index 9e62152..3e9dfbc 100644
--- 
a/plugin-yarn/src/main/java/org/apache/ranger/services/yarn/RangerServiceYarn.java
+++ 
b/plugin-yarn/src/main/java/org/apache/ranger/services/yarn/RangerServiceYarn.java
@@ -100,23 +100,25 @@ public class RangerServiceYarn extends RangerBaseService {
                String queueResourceName = 
RangerYarnAuthorizer.KEY_RESOURCE_QUEUE;
 
                for (RangerPolicy defaultPolicy : ret) {
-                       RangerPolicy.RangerPolicyResource queuePolicyResource = 
defaultPolicy.getResources().get(queueResourceName);
-                       if (queuePolicyResource != null) {
-                               List<RangerServiceDef.RangerResourceDef> 
resourceDefs = serviceDef.getResources();
-                               RangerServiceDef.RangerResourceDef 
queueResourceDef = null;
-                               for (RangerServiceDef.RangerResourceDef 
resourceDef : resourceDefs) {
-                                       if 
(resourceDef.getName().equals(queueResourceName)) {
-                                               queueResourceDef = resourceDef;
-                                               break;
+                       if(defaultPolicy.getName().contains("all")){
+                               RangerPolicy.RangerPolicyResource 
queuePolicyResource = defaultPolicy.getResources().get(queueResourceName);
+                               if (queuePolicyResource != null) {
+                                       
List<RangerServiceDef.RangerResourceDef> resourceDefs = 
serviceDef.getResources();
+                                       RangerServiceDef.RangerResourceDef 
queueResourceDef = null;
+                                       for (RangerServiceDef.RangerResourceDef 
resourceDef : resourceDefs) {
+                                               if 
(resourceDef.getName().equals(queueResourceName)) {
+                                                       queueResourceDef = 
resourceDef;
+                                                       break;
+                                               }
+                                       }
+                                       if (queueResourceDef != null) {
+                                               
queuePolicyResource.setValue(RangerAbstractResourceMatcher.WILDCARD_ASTERISK);
+                                       } else {
+                                               LOG.warn("No resourceDef found 
in YARN service-definition for '" + queueResourceName + "'");
                                        }
-                               }
-                               if (queueResourceDef != null) {
-                                       
queuePolicyResource.setValue(RangerAbstractResourceMatcher.WILDCARD_ASTERISK);
                                } else {
-                                       LOG.warn("No resourceDef found in YARN 
service-definition for '" + queueResourceName + "'");
+                                       LOG.warn("No '" + queueResourceName + 
"' found in default policy");
                                }
-                       } else {
-                               LOG.warn("No '" + queueResourceName + "' found 
in default policy");
                        }
                }
 

Reply via email to