Copilot commented on code in PR #786:
URL: https://github.com/apache/ranger/pull/786#discussion_r2659654071


##########
agents-common/src/main/resources/service-defs/ranger-servicedef-kudu.json:
##########
@@ -1,193 +1,68 @@
 {
-  "id":105,
-  "name": "kudu",
-  "implClass": "org.apache.ranger.services.kudu.RangerServiceKudu",
-  "label": "Kudu",
+  "id":          105,
+  "name":        "kudu",
+  "implClass":   "org.apache.ranger.services.kudu.RangerServiceKudu",
+  "label":       "Kudu",
   "description": "Kudu",
-  "guid": "",
-  "resources":
-  [
+  "guid":        "",
+  "resources": [
     {
-      "itemId": 1,
-      "name": "database",
-      "type": "string",
-      "level": 10,
-      "parent": "",
-      "mandatory": true,
-      "lookupSupported": true,
-      "recursiveSupported": false,
+      "itemId":            1,
+      "name":              "database",
+      "parent":            "",
+      "level":             10,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
       "excludesSupported": true,
-      "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-      "matcherOptions": { "wildCard":true, "ignoreCase":true },
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Database",
-      "description": "Database",
-      "isValidLeaf": true
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Database",
+      "description":       "Database",
+      "isValidLeaf":       true
     },
-
     {
-      "itemId": 2,
-      "name": "table",
-      "type": "string",
-      "level": 20,
-      "parent": "database",
-      "mandatory": true,
-      "lookupSupported": true,
-      "recursiveSupported": false,
+      "itemId":            2,
+      "name":              "table",
+      "parent":            "database",
+      "level":             20,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
       "excludesSupported": true,
-      "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-      "matcherOptions": { "wildCard":true, "ignoreCase":true },
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Table",
-      "description": "Table",
-      "isValidLeaf": true
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Table",
+      "description":       "Table",
+      "isValidLeaf":       true
     },
     {
-      "itemId": 3,
-      "name": "column",
-      "type": "string",
-      "level": 30,
-      "parent": "table",
-      "mandatory": true,
-      "lookupSupported": true,
-      "recursiveSupported": false,
+      "itemId":            3,
+      "name":              "column",
+      "parent":            "table",
+      "level":             30,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
       "excludesSupported": true,
-      "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-      "matcherOptions": { "wildCard":true, "ignoreCase":true },
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Column",
-      "description": "Column"
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Column",
+      "description":       "Column"
     }
   ],
-
-  "accessTypes":
-  [
-    {
-      "itemId": 1,
-      "name": "select",
-      "label": "SELECT",
-      "category": "READ",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-
-    {
-      "itemId": 2,
-      "name": "insert",
-      "label": "INSERT",
-      "category": "UPDATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 3,
-      "name": "update",
-      "label": "UPDATE",
-      "category": "UPDATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 4,
-      "name": "delete",
-      "label": "DELETE",
-      "category": "DELETE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 5,
-      "name": "alter",
-      "label": "ALTER",
-      "category": "CREATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 6,
-      "name": "create",
-      "label": "CREATE",
-      "category": "CREATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 7,
-      "name": "drop",
-      "label": "DROP",
-      "category": "DELETE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 8,
-      "name": "metadata",
-      "label": "METADATA",
-      "category": "MANAGE"
-    },
-    {
-      "itemId": 9,
-      "name": "all",
-      "label": "ALL",
-      "impliedGrants":
-      [
-        "select",
-        "insert",
-        "update",
-        "delete",
-        "alter",
-        "create",
-        "drop",
-        "metadata"
-      ]
-    }
-  ],
-
-  "configs":
-  [
-    {
-      "itemId": 1,
-      "name": "ranger.plugin.audit.filters",
-      "type": "string",
-      "subType": "",
-      "mandatory": false,
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Ranger Default Audit Filters",
-      "defaultValue": "[]"
-    }
-  ],
-
-  "enums":
-  [
-  ],
-
-  "contextEnrichers":
-  [
+  "accessTypes": [
+    { "itemId": 1, "name": "select",   "label": "SELECT",   "category": 
"READ",   "impliedGrants": [ "metadata" ] },
+    { "itemId": 2, "name": "insert",   "label": "INSERT",   "category": 
"UPDATE", "impliedGrants": [ "metadata" ] },
+    { "itemId": 3, "name": "update",    "label": "UPDATE",  "category": 
"UPDATE", "impliedGrants": [ "metadata" ] },

Review Comment:
   Inconsistent spacing in label alignment. The label 'UPDATE' has extra spaces 
compared to other entries in the same array for alignment purposes, but this is 
inconsistent with the 'update' name field.
   ```suggestion
       { "itemId": 3, "name": "update",   "label": "UPDATE",   "category": 
"UPDATE", "impliedGrants": [ "metadata" ] },
   ```



##########
agents-common/src/main/resources/service-defs/ranger-servicedef-kafka.json:
##########
@@ -1,259 +1,122 @@
 {
-       "id":9,
-       "name":"kafka",
-        "displayName": "kafka",
-       "implClass":"org.apache.ranger.services.kafka.RangerServiceKafka",
-       "label":"Kafka",
-       "description":"Apache Kafka",
-       "resources":[
-               {
-                       "itemId":1,
-                       "name":"topic",
-                       "type":"string",
-                       "level":1,
-                       "mandatory":true,
-                       "lookupSupported":true,
-                       "recursiveSupported":false,
-                       "excludesSupported":true,
-                       
"matcher":"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions":{
-                               "wildCard":true,
-                               "ignoreCase":true
-                       },
-                       "validationRegEx":"",
-                       "validationMessage":"",
-                       "uiHint":"",
-                       "label":"Topic",
-                       "description":"Topic",
-                       "accessTypeRestrictions": ["create", "delete", 
"configure", "alter", "alter_configs", "describe", "describe_configs", 
"consume", "publish"]
-               },
-               {
-                       "itemId":2,
-                       "name":"transactionalid",
-                       "type":"string",
-                       "level":1,
-                       "mandatory":true,
-                       "excludesSupported":true,
-                       
"matcher":"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions":{
-                               "wildCard":true,
-                               "ignoreCase":true
-                       },
-                       "label":"Transactional Id",
-                       "description":"Transactional Id",
-                       "accessTypeRestrictions": ["publish", "describe"]
-               },
-               {
-                       "itemId":3,
-                       "name":"cluster",
-                       "type":"string",
-                       "level":1,
-                       "mandatory":true,
-                       "excludesSupported":true,
-                       
"matcher":"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions":{
-                               "wildCard":true,
-                               "ignoreCase":true
-                       },
-                       "label":"Cluster",
-                       "description":"Cluster",
-                       "accessTypeRestrictions": ["create", "configure", 
"alter", "alter_configs", "describe", "describe_configs", "kafka_admin", 
"idempotent_write", "cluster_action"]
-               },
-               {
-                       "itemId":4,
-                       "name":"delegationtoken",
-                       "type":"string",
-                       "level":1,
-                       "mandatory":true,
-                       "excludesSupported":true,
-                       
"matcher":"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions":{
-                               "wildCard":true,
-                               "ignoreCase":true
-                       },
-                       "label":"Delegation Token",
-                       "description":"Delegation Token",
-                       "accessTypeRestrictions": ["describe"]
-               },
-               {
-                       "itemId":5,
-                       "name":"consumergroup",
-                       "type":"string",
-                       "level":1,
-                       "mandatory":true,
-                       "excludesSupported":true,
-                       
"matcher":"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions":{
-                               "wildCard":true,
-                               "ignoreCase":true
-                       },
-                       "label":"Consumer Group",
-                       "description":"Consumer Group",
-                       "accessTypeRestrictions": ["consume", "describe", 
"delete"]
-               }
-       ],
-       "accessTypes":[
-               {
-                       "itemId":1,
-                       "name":"publish",
-                       "label":"Publish",
-                       "category": "UPDATE",
-                       "impliedGrants":[
-                               "describe"
-                       ]
-               },
-               {
-                       "itemId":2,
-                       "name":"consume",
-                       "label":"Consume",
-                       "category": "READ",
-                       "impliedGrants":[
-                               "describe"
-                       ]
-               },
-               {
-                       "itemId":5,
-                       "name":"configure",
-                       "label":"Configure",
-                       "category": "MANAGE",
-                       "impliedGrants":[
-                               "describe"
-                       ]
-               },
-               {
-                       "itemId":6,
-                       "name":"describe",
-                       "label":"Describe",
-                       "category": "READ"
-               },
-               {
-                       "itemId":7,
-                       "name":"kafka_admin",
-                       "label":"Kafka Admin",
-                       "category": "MANAGE",
-                       "impliedGrants":[
-                               "publish",
-                               "consume",
-                               "configure",
-                               "describe",
-                               "create",
-                               "delete",
-                               "describe_configs",
-                               "alter_configs",
-                               "alter",
-                               "idempotent_write",
-                               "cluster_action"
-                       ]
-               },
-               {
-                       "itemId":8,
-                       "name":"create",
-                       "label":"Create",
-                       "category": "CREATE"
-               },
-               {
-                       "itemId":9,
-                       "name":"delete",
-                       "label":"Delete",
-                       "category": "DELETE",
-                       "impliedGrants":[
-                               "describe"
-                       ]
-               },
-               {
-                       "itemId":10,
-                       "name":"idempotent_write",
-                       "label":"Idempotent Write",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId":11,
-                       "name":"describe_configs",
-                       "label":"Describe Configs",
-                       "category": "READ"
-               },
-               {
-                       "itemId":12,
-                       "name":"alter_configs",
-                       "label":"Alter Configs",
-                       "category": "MANAGE",
-                       "impliedGrants":[
-                               "describe_configs"
-                       ]
-               },
-               {
-                       "itemId":13,
-                       "name":"cluster_action",
-                       "label":"Cluster Action",
-                       "category": "MANAGE"
-               },
-               {
-                       "itemId":14,
-                       "name":"alter",
-                       "label":"Alter",
-                       "category": "MANAGE"
-               }
-       ],
-       "configs":[
-               {
-                       "itemId":1,
-                       "name":"username",
-                       "type":"string",
-                       "mandatory":true,
-                       "label":"Username"
-               },
-               {
-                       "itemId":2,
-                       "name":"password",
-                       "type":"password",
-                       "mandatory":true,
-                       "label":"Password"
-               },
-               {
-                       "itemId":3,
-                       "name":"zookeeper.connect",
-                       "type":"string",
-                       "mandatory":true,
-                       "defaultValue":"localhost:2181",
-                       "label":"Zookeeper Connect String"
-               },
-               {
-                       "itemId":4,
-                       "name":"commonNameForCertificate",
-                       "type":"string",
-                       "mandatory":false,
-                       "label":"Ranger Plugin SSL CName"
-               },
-
-               {
-                       "itemId": 5,
-                       "name": "ranger.plugin.audit.filters",
-                       "type": "string",
-                       "subType": "",
-                       "mandatory": false,
-                       "validationRegEx":"",
-                       "validationMessage": "",
-                       "uiHint":"",
-                       "label": "Ranger Default Audit Filters",
-                       "defaultValue": "[{'accessResult': 'DENIED', 
'isAudited': 
true},{'resources':{'topic':{'values':['ATLAS_ENTITIES','ATLAS_HOOK','ATLAS_SPARK_HOOK']}},'users':['atlas'],'actions':['describe','publish','consume'],'isAudited':false},{'resources':{'topic':{'values':['ATLAS_HOOK']}},'users':['hive','hbase','impala','nifi'],'actions':['publish','describe'],'isAudited':false},{'resources':{'topic':{'values':['ATLAS_ENTITIES']}},'users':['rangertagsync'],'actions':['consume','describe'],'isAudited':false},{'resources':{'consumergroup':{'values':['*']}},'users':['atlas','rangertagsync'],'actions':['consume'],'isAudited':false},{'users':['kafka'],'isAudited':false},{'resources':{'topic':{'values':['__CruiseControlMetrics']}},'users':['cc_metric_reporter'],'actions':['describe','publish','consume'],'isAudited':false}]"
-               }
-       ],
-       "enums":[
-       ],
-       "contextEnrichers":[
-       ],
-       "policyConditions":[
-               {
-                       "itemId":1,
-                       "name":"ip-range",
-                       
"evaluator":"org.apache.ranger.plugin.conditionevaluator.RangerIpMatcher",
-                       "evaluatorOptions":{
-                       },
-                       "validationRegEx":"",
-                       "validationMessage":"",
-                       "label":"IP Address Range",
-                       "description":"IP Address Range",
-                       "uiHint" : "{ \"isMultiValue\":true }"
-               }
-       ]
+  "id":           9,
+  "name":        "kafka",
+  "displayName": "kafka",
+  "implClass":   "org.apache.ranger.services.kafka.RangerServiceKafka",
+  "label":       "Kafka",
+  "description": "Apache Kafka",
+  "resources": [
+    {
+      "itemId":            1,
+      "name":              "topic",
+      "parent":            "",
+      "level":             1,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Topic",
+      "description":       "Topic",
+      "accessTypeRestrictions": [
+        "create", "delete", "configure", "alter", "alter_configs", "describe", 
"describe_configs", "consume", "publish"
+      ]
+    },
+    {
+      "itemId":            2,
+      "name":              "transactionalid",
+      "parent":            "",
+      "level":             1,
+      "type":              "string",
+      "mandatory":         true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Transactional Id",
+      "description":       "Transactional Id",
+      "accessTypeRestrictions": [
+        "publish", "describe"
+      ]
+    },
+    {
+      "itemId":            3,
+      "name":              "cluster",
+      "parent":            "",
+      "level":             1,
+      "type":              "string",
+      "mandatory":         true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Cluster",
+      "description":       "Cluster",
+      "accessTypeRestrictions": [
+        "create", "configure", "alter", "alter_configs", "describe", 
"describe_configs", "kafka_admin", "idempotent_write", "cluster_action"
+      ]
+    },
+    {
+      "itemId":            4,
+      "name":              "delegationtoken",
+      "parent":            "",
+      "type":              "string",
+      "level":             1,
+      "mandatory":         true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Delegation Token",
+      "description":       "Delegation Token",
+      "accessTypeRestrictions": [
+        "describe"
+      ]
+    },
+    {
+      "itemId":            5,
+      "name":              "consumergroup",
+      "parent":            "",
+      "type":              "string",
+      "level":             1,
+      "mandatory":         true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Consumer Group",
+      "description":       "Consumer Group",
+      "accessTypeRestrictions": [
+        "consume", "describe", "delete"
+      ]
+    }
+  ],
+  "accessTypes": [
+    { "itemId": 1,  "name": "publish",          "label": "Publish",          
"category":  "UPDATE", "impliedGrants": [ "describe" ] },
+    { "itemId": 2,  "name": "consume",          "label": "Consume",          
"category":  "READ",   "impliedGrants": [ "describe" ] },
+    { "itemId": 5,  "name": "configure",        "label": "Configure",        
"category":  "MANAGE", "impliedGrants": [ "describe" ] },
+    { "itemId": 6,  "name": "describe",         "label": "Describe",         
"category":  "READ" },
+    { "itemId": 7,  "name": "kafka_admin",      "label": "Kafka Admin",      
"category":  "MANAGE", "impliedGrants": [ "publish", "consume", "configure", 
"describe", "create", "delete", "describe_configs", "alter_configs", "alter", 
"idempotent_write", "cluster_action" ] },
+    { "itemId": 8,  "name": "create",           "label": "Create",           
"category":  "CREATE" },
+    { "itemId": 9,  "name": "delete",           "label": "Delete",           
"category":  "DELETE", "impliedGrants": [ "describe" ] },
+    { "itemId": 10, "name": "idempotent_write", "label": "Idempotent Write", 
"category":  "UPDATE" },
+    { "itemId": 11, "name": "describe_configs", "label": "Describe Configs", 
"category":  "READ" },
+    { "itemId": 12, "name": "alter_configs",    "label": "Alter Configs",    
"category":  "MANAGE", "impliedGrants": [ "describe_configs" ] },
+    { "itemId": 13, "name": "cluster_action",   "label": "Cluster Action",   
"category":  "MANAGE" },
+    { "itemId": 14, "name": "alter",            "label": "Alter",            
"category":  "MANAGE" }
+  ],
+  "configs": [
+    { "itemId": 1, "name": "username",                    "type": "string",   
"mandatory": true,  "label": "Username" },
+    { "itemId": 2, "name": "password",                    "type": "password", 
"mandatory": true,  "label": "Password" },
+    { "itemId": 3, "name": "zookeeper.connect",           "type": "string",   
"mandatory": true,  "label": "Zookeeper Connect String",      "defaultValue": 
"localhost: 2181" },

Review Comment:
   Extra space in defaultValue 'localhost: 2181' should be 'localhost:2181' to 
match standard Zookeeper connection string format.



##########
agents-common/src/main/resources/service-defs/ranger-servicedef-kudu.json:
##########
@@ -1,193 +1,68 @@
 {
-  "id":105,
-  "name": "kudu",
-  "implClass": "org.apache.ranger.services.kudu.RangerServiceKudu",
-  "label": "Kudu",
+  "id":          105,
+  "name":        "kudu",
+  "implClass":   "org.apache.ranger.services.kudu.RangerServiceKudu",
+  "label":       "Kudu",
   "description": "Kudu",
-  "guid": "",
-  "resources":
-  [
+  "guid":        "",
+  "resources": [
     {
-      "itemId": 1,
-      "name": "database",
-      "type": "string",
-      "level": 10,
-      "parent": "",
-      "mandatory": true,
-      "lookupSupported": true,
-      "recursiveSupported": false,
+      "itemId":            1,
+      "name":              "database",
+      "parent":            "",
+      "level":             10,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
       "excludesSupported": true,
-      "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-      "matcherOptions": { "wildCard":true, "ignoreCase":true },
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Database",
-      "description": "Database",
-      "isValidLeaf": true
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Database",
+      "description":       "Database",
+      "isValidLeaf":       true
     },
-
     {
-      "itemId": 2,
-      "name": "table",
-      "type": "string",
-      "level": 20,
-      "parent": "database",
-      "mandatory": true,
-      "lookupSupported": true,
-      "recursiveSupported": false,
+      "itemId":            2,
+      "name":              "table",
+      "parent":            "database",
+      "level":             20,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
       "excludesSupported": true,
-      "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-      "matcherOptions": { "wildCard":true, "ignoreCase":true },
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Table",
-      "description": "Table",
-      "isValidLeaf": true
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Table",
+      "description":       "Table",
+      "isValidLeaf":       true
     },
     {
-      "itemId": 3,
-      "name": "column",
-      "type": "string",
-      "level": 30,
-      "parent": "table",
-      "mandatory": true,
-      "lookupSupported": true,
-      "recursiveSupported": false,
+      "itemId":            3,
+      "name":              "column",
+      "parent":            "table",
+      "level":             30,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
       "excludesSupported": true,
-      "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-      "matcherOptions": { "wildCard":true, "ignoreCase":true },
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Column",
-      "description": "Column"
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": true, "ignoreCase": true },
+      "label":             "Column",
+      "description":       "Column"
     }
   ],
-
-  "accessTypes":
-  [
-    {
-      "itemId": 1,
-      "name": "select",
-      "label": "SELECT",
-      "category": "READ",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-
-    {
-      "itemId": 2,
-      "name": "insert",
-      "label": "INSERT",
-      "category": "UPDATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 3,
-      "name": "update",
-      "label": "UPDATE",
-      "category": "UPDATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 4,
-      "name": "delete",
-      "label": "DELETE",
-      "category": "DELETE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 5,
-      "name": "alter",
-      "label": "ALTER",
-      "category": "CREATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 6,
-      "name": "create",
-      "label": "CREATE",
-      "category": "CREATE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 7,
-      "name": "drop",
-      "label": "DROP",
-      "category": "DELETE",
-      "impliedGrants":
-      [
-        "metadata"
-      ]
-    },
-    {
-      "itemId": 8,
-      "name": "metadata",
-      "label": "METADATA",
-      "category": "MANAGE"
-    },
-    {
-      "itemId": 9,
-      "name": "all",
-      "label": "ALL",
-      "impliedGrants":
-      [
-        "select",
-        "insert",
-        "update",
-        "delete",
-        "alter",
-        "create",
-        "drop",
-        "metadata"
-      ]
-    }
-  ],
-
-  "configs":
-  [
-    {
-      "itemId": 1,
-      "name": "ranger.plugin.audit.filters",
-      "type": "string",
-      "subType": "",
-      "mandatory": false,
-      "validationRegEx":"",
-      "validationMessage": "",
-      "uiHint":"",
-      "label": "Ranger Default Audit Filters",
-      "defaultValue": "[]"
-    }
-  ],
-
-  "enums":
-  [
-  ],
-
-  "contextEnrichers":
-  [
+  "accessTypes": [
+    { "itemId": 1, "name": "select",   "label": "SELECT",   "category": 
"READ",   "impliedGrants": [ "metadata" ] },
+    { "itemId": 2, "name": "insert",   "label": "INSERT",   "category": 
"UPDATE", "impliedGrants": [ "metadata" ] },
+    { "itemId": 3, "name": "update",    "label": "UPDATE",  "category": 
"UPDATE", "impliedGrants": [ "metadata" ] },
+    { "itemId": 4, "name": "delete",   "label": "DELETE",   "category": 
"DELETE", "impliedGrants": [ "metadata" ] },
+    { "itemId": 5, "name": "alter",    "label": "ALTER",    "category": 
"CREATE", "impliedGrants": [ "metadata" ] },
+    { "itemId": 6, "name": "create",   "label": "CREATE",   "category": 
"CREATE", "impliedGrants": [ "metadata" ] },
+    { "itemId": 7, "name": "drop",     "label": "DROP",     "category": 
"DELETE", "impliedGrants": [ "metadata" ] },
+    { "itemId": 8, "name": "metadata", "label": "METADATA", "category": 
"MANAGE" },
+    { "itemId": 9, "name": "all",      "label": "ALL", "impliedGrants": [ 
"select", "insert", "update", "delete", "alter", "create", "drop", "metadata" ] 
}
   ],
-
-  "policyConditions":
-  [
+  "configs": [
+    { "itemId": 1, "name": "ranger.plugin.audit.filters", "type": "string", 
"label": "Ranger Default Audit Filters", "defaultValue": "[]" }

Review Comment:
   Missing 'mandatory' field specification. Other config entries in similar 
files explicitly specify 'mandatory': false. For consistency, this should be 
added.
   ```suggestion
       { "itemId": 1, "name": "ranger.plugin.audit.filters", "type": "string", 
"label": "Ranger Default Audit Filters", "defaultValue": "[]", "mandatory": 
false }
   ```



##########
agents-common/src/main/resources/service-defs/ranger-servicedef-atlas.json:
##########
@@ -1,508 +1,293 @@
 {
-       "id": 15,
-       "name": "atlas",
-       "displayName": "atlas",
-       "implClass": "org.apache.ranger.services.atlas.RangerServiceAtlas",
-       "label": "Atlas Metadata Server",
-       "description": "Atlas Metadata Server",
-       "guid": "311a79b7-16f5-46f4-9829-a0224b9999c5",
-       "resources": [
-               {
-                       "itemId": 1,
-                       "name": "type-category",
-                       "type": "string",
-                       "level": 10,
-                       "mandatory": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "true"
-                       },
-                       "label": "Type Category",
-                       "description": "Type Category"
-               },
-               {
-                       "itemId": 2,
-                       "name": "type",
-                       "type": "string",
-                       "level": 20,
-                       "mandatory": true,
-                       "parent": "type-category",
-                       "isValidLeaf": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "Type Name",
-                       "description": "Type Name",
-                       "accessTypeRestrictions": ["type-read" ,"type-create", 
"type-update", "type-delete" ]
-               },
-               {
-                       "itemId": 3,
-                       "name": "entity-type",
-                       "type": "string",
-                       "level": 10,
-                       "mandatory": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "Entity Type",
-                       "description": "Entity Type"
-               },
-               {
-                       "itemId": 4,
-                       "name": "entity-classification",
-                       "type": "string",
-                       "level": 20,
-                       "mandatory": true,
-                       "parent": "entity-type",
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "Entity Classification",
-                       "description": "Entity Classification"
-               },
-               {
-                       "itemId": 5,
-                       "name": "entity",
-                       "type": "string",
-                       "level": 30,
-                       "mandatory": true,
-                       "parent": "entity-classification",
-                       "isValidLeaf": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "true"
-                       },
-                       "label": "Entity ID",
-                       "description": "Entity ID",
-                       "accessTypeRestrictions": ["entity-read", 
"entity-create", "entity-update", "entity-delete"]
-               },
-               {
-                       "itemId": 6,
-                       "name": "atlas-service",
-                       "type": "string",
-                       "level": 10,
-                       "mandatory": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "true"
-                       },
-                       "label": "Atlas Service",
-                       "description": "Atlas Service",
-                       "accessTypeRestrictions": ["admin-import", 
"admin-export", "admin-purge", "admin-audits"]
-               },
-               {
-                       "itemId": 7,
-                       "name": "relationship-type",
-                       "type": "string",
-                       "level": 10,
-                       "mandatory": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                                       "wildCard": "true",
-                                       "ignoreCase": "false"
-                       },
-                       "label": "Relationship Type",
-                       "description": "Relationship Type"
-               },
-               {
-                       "itemId": 8,
-                       "name": "end-one-entity-type",
-                       "type": "string",
-                       "level": 20,
-                       "mandatory": true,
-                       "parent": "relationship-type",
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "End1 Entity Type",
-                       "description": "End1 Entity Type"
-               },
-               {
-                       "itemId": 9,
-                       "name": "end-one-entity-classification",
-                       "type": "string",
-                       "level": 30,
-                       "mandatory": true,
-                       "parent": "end-one-entity-type",
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "End1 Entity Classification",
-                       "description": "End1 Entity Classification"
-               },
-               {
-                       "itemId": 10,
-                       "name": "end-one-entity",
-                       "type": "string",
-                       "level": 40,
-                       "mandatory": true,
-                       "parent": "end-one-entity-classification",
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "true"
-                       },
-                       "label": "End1 Entity ID",
-                       "description": "End1 Entity ID"
-               },
-               {
-                       "itemId": 11,
-                       "name": "end-two-entity-type",
-                       "type": "string",
-                       "level": 50,
-                       "mandatory": true,
-                       "parent": "end-one-entity",
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "End2 Entity Type",
-                       "description": "End2 Entity Type"
-               },
-               {
-                       "itemId": 12,
-                       "name": "end-two-entity-classification",
-                       "type": "string",
-                       "level": 60,
-                       "mandatory": true,
-                       "parent": "end-two-entity-type",
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "End2 Entity Classification",
-                       "description": "End2 Entity Classification"
-               },
-               {
-                       "itemId": 13,
-                       "name": "end-two-entity",
-                       "type": "string",
-                       "level": 70,
-                       "mandatory": true,
-                       "parent": "end-two-entity-classification",
-                       "isValidLeaf": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "true"
-                       },
-                       "label": "End2 Entity ID",
-                       "description": "End2 Entity ID",
-                       "accessTypeRestrictions": [
-                               "add-relationship",
-                               "update-relationship",
-                               "remove-relationship"
-                       ]
-               },
-               {
-                       "itemId": 14,
-                       "name": "entity-label",
-                       "type": "string",
-                       "level": 40,
-                       "mandatory": true,
-                       "parent": "entity",
-                       "isValidLeaf": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "true"
-                       },
-                       "label": "Label",
-                       "description": "Label",
-                       "accessTypeRestrictions": [
-                               "entity-add-label",
-                               "entity-remove-label"
-                       ]
-               },
-               {
-                       "itemId": 15,
-                       "name": "entity-business-metadata",
-                       "type": "string",
-                       "level": 40,
-                       "mandatory": true,
-                       "parent": "entity",
-                       "isValidLeaf": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "true"
-                       },
-                       "label": "Business Metadata",
-                       "description": "Business Metadata",
-                       "accessTypeRestrictions": [
-                               "entity-update-business-metadata"
-                       ]
-               },
-               {
-                       "itemId": 16,
-                       "name": "classification",
-                       "type": "string",
-                       "level": 40,
-                       "mandatory": true,
-                       "parent": "entity",
-                       "isValidLeaf": true,
-                       "lookupSupported": true,
-                       "recursiveSupported": false,
-                       "excludesSupported": true,
-                       "matcher": 
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
-                       "matcherOptions": {
-                               "wildCard": "true",
-                               "ignoreCase": "false"
-                       },
-                       "label": "Targetted classifications",
-                       "description": "Targetted classifications",
-                       "accessTypeRestrictions": [
-                               "entity-add-classification",
-                               "entity-update-classification",
-                               "entity-remove-classification"
-                       ]
-               }
-       ],
-       "accessTypes": [
-               {
-                       "itemId": 1,
-                       "name": "type-create",
-                       "label": "Create Type",
-                       "category": "MANAGE",
-                       "impliedGrants":
-                       [
-                               "type-read"
-                       ]
-               },
-               {
-                       "itemId": 2,
-                       "name": "type-update",
-                       "label": "Update Type",
-                       "category": "MANAGE",
-                       "impliedGrants":
-                       [
-                               "type-read"
-                       ]
-               },
-               {
-                       "itemId": 3,
-                       "name": "type-delete",
-                       "label": "Delete Type",
-                       "category": "MANAGE",
-                       "impliedGrants":
-                       [
-                               "type-read"
-                       ]
-               },
-               {
-                       "itemId": 4,
-                       "name": "entity-read",
-                       "label": "Read Entity",
-                       "category": "READ"
-               },
-               {
-                       "itemId": 5,
-                       "name": "entity-create",
-                       "label": "Create Entity",
-                       "category": "CREATE"
-               },
-               {
-                       "itemId": 6,
-                       "name": "entity-update",
-                       "label": "Update Entity",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 7,
-                       "name": "entity-delete",
-                       "label": "Delete Entity",
-                       "category": "DELETE"
-               },
-               {
-                       "itemId": 8,
-                       "name": "entity-add-classification",
-                       "label": "Add Classification",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 9,
-                       "name": "entity-update-classification",
-                       "label": "Update Classification",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 10,
-                       "name": "entity-remove-classification",
-                       "label": "Remove Classification",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 11,
-                       "name": "admin-export",
-                       "label": "Admin Export",
-                       "category": "MANAGE"
-               },
-               {
-                       "itemId": 12,
-                       "name": "admin-import",
-                       "label": "Admin Import",
-                       "category": "MANAGE"
-               },
-               {
-                       "itemId": 13,
-                       "name": "add-relationship",
-                       "label": "Add Relationship",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 14,
-                       "name": "update-relationship",
-                       "label": "Update Relationship",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 15,
-                       "name": "remove-relationship",
-                       "label": "Remove Relationship",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 16,
-                       "name": "admin-purge",
-                       "label": "Admin Purge",
-                       "category": "MANAGE"
-               },
-               {
-                       "itemId": 17,
-                       "name": "entity-add-label",
-                       "label": "Add Label",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 18,
-                       "name": "entity-remove-label",
-                       "label": "Remove Label",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 19,
-                       "name": "entity-update-business-metadata",
-                       "label": "Update Business Metadata",
-                       "category": "UPDATE"
-               },
-               {
-                       "itemId": 20,
-                       "name": "type-read",
-                       "label": "Read Type",
-                       "category": "READ"
-               },
-               {
-                       "itemId": 21,
-                       "name": "admin-audits",
-                       "label": "Admin Audits",
-                       "category": "MANAGE"
-               }
-       ],
-       "configs": [
-               {
-                       "itemId": 1,
-                       "name": "username",
-                       "type": "string",
-                       "mandatory": true,
-                       "label": "Username"
-               },
-               {
-                       "itemId": 2,
-                       "name": "password",
-                       "type": "password",
-                       "mandatory": true,
-                       "label": "Password"
-               },
-               {
-                       "itemId": 3,
-                       "name": "atlas.rest.address",
-                       "type": "string",
-                       "mandatory": true,
-                       "defaultValue": "http://localhost:21000";
-               },
-               {
-                       "itemId": 4,
-                       "name": "commonNameForCertificate",
-                       "type": "string",
-                       "mandatory": false,
-                       "label": "Common Name for Certificate"
-               },
-
-               {
-                       "itemId": 5,
-                       "name": "ranger.plugin.audit.filters",
-                       "type": "string",
-                       "subType": "",
-                       "mandatory": false,
-                       "validationRegEx":"",
-                       "validationMessage": "",
-                       "uiHint":"",
-                       "label": "Ranger Default Audit Filters",
-                       "defaultValue": "[ {'accessResult': 'DENIED', 
'isAudited': true}, {'users':['atlas'] ,'isAudited':false}, 
{'accessResult':'ALLOWED', 'isAudited':false, 'actions':['entity-read'], 
'accessTypes':['entity-read'], 'users':['nifi']} ]"
-               }
-       ],
-       "options": {
-               "enableDenyAndExceptionsInPolicies": "true",
-               "enableTagBasedPolicies":"false"
-       }
+  "id":          15,
+  "name":        "atlas",
+  "displayName": "atlas",
+  "implClass":   "org.apache.ranger.services.atlas.RangerServiceAtlas",
+  "label":       "Atlas Metadata Server",
+  "description": "Atlas Metadata Server",
+  "guid":        "311a79b7-16f5-46f4-9829-a0224b9999c5",
+  "options":     { "enableDenyAndExceptionsInPolicies": "true", 
"enableTagBasedPolicies":"false" },
+  "resources": [
+    {
+      "itemId":            1,
+      "name":              "type-category",
+      "parent":            "",
+      "level":             10,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "true" },
+      "label":             "Type Category",
+      "description":       "Type Category"
+    },
+    {
+      "itemId":            2,
+      "name":              "type",
+      "parent":            "type-category",
+      "level":             20,
+      "type":              "string",
+      "mandatory":         true,
+      "isValidLeaf":       true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "Type Name",
+      "description":       "Type Name",
+      "accessTypeRestrictions": [
+        "type-read", "type-create", "type-update", "type-delete"
+      ]
+    },
+    {
+      "itemId":            3,
+      "name":              "entity-type",
+      "parent":            "",
+      "level":             10,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "Entity Type",
+      "description":       "Entity Type"
+    },
+    {
+      "itemId":            4,
+      "name":              "entity-classification",
+      "parent":            "entity-type",
+      "level":             20,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "Entity Classification",
+      "description":       "Entity Classification"
+    },
+    {
+      "itemId":            5,
+      "name":              "entity",
+      "parent":            "entity-classification",
+      "level":             30,
+      "type":              "string",
+      "mandatory":         true,
+      "isValidLeaf":       true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "true" },
+      "label":             "Entity ID",
+      "description":       "Entity ID",
+      "accessTypeRestrictions": [
+        "entity-read", "entity-create", "entity-update", "entity-delete"
+      ]
+    },
+    {
+      "itemId":            6,
+      "name":              "atlas-service",
+      "parent":            "",
+      "level":             10,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "true" },
+      "label":             "Atlas Service",
+      "description":       "Atlas Service",
+      "accessTypeRestrictions": [
+        "admin-import", "admin-export", "admin-purge", "admin-audits"
+      ]
+    },
+    {
+      "itemId":            7,
+      "name":              "relationship-type",
+      "type":              "string",
+      "parent":            "",
+      "level":             10,
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "Relationship Type",
+      "description":       "Relationship Type"
+    },
+    {
+      "itemId":            8,
+      "name":              "end-one-entity-type",
+      "parent":            "relationship-type",
+      "level":             20,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "End1 Entity Type",
+      "description":       "End1 Entity Type"
+    },
+    {
+      "itemId":            9,
+      "name":              "end-one-entity-classification",
+      "parent":            "end-one-entity-type",
+      "level":             30,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "End1 Entity Classification",
+      "description":       "End1 Entity Classification"
+    },
+    {
+      "itemId":            10,
+      "name":              "end-one-entity",
+      "parent":            "end-one-entity-classification",
+      "level":             40,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "true" },
+      "label":             "End1 Entity ID",
+      "description":       "End1 Entity ID"
+    },
+    {
+      "itemId":            11,
+      "name":              "end-two-entity-type",
+      "parent":            "end-one-entity",
+      "level":             50,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "End2 Entity Type",
+      "description":       "End2 Entity Type"
+    },
+    {
+      "itemId":            12,
+      "name":              "end-two-entity-classification",
+      "parent":            "end-two-entity-type",
+      "level":             60,
+      "type":              "string",
+      "mandatory":         true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "End2 Entity Classification",
+      "description":       "End2 Entity Classification"
+    },
+    {
+      "itemId":            13,
+      "name":              "end-two-entity",
+      "parent":            "end-two-entity-classification",
+      "level":             70,
+      "type":              "string",
+      "mandatory":         true,
+      "isValidLeaf":       true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "true" },
+      "label":             "End2 Entity ID",
+      "description":       "End2 Entity ID",
+      "accessTypeRestrictions": [
+        "add-relationship", "update-relationship", "remove-relationship"
+      ]
+    },
+    {
+      "itemId":            14,
+      "name":              "entity-label",
+      "parent":            "entity",
+      "level":             40,
+      "type":              "string",
+      "mandatory":         true,
+      "isValidLeaf":       true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "true" },
+      "label":             "Label",
+      "description":       "Label",
+      "accessTypeRestrictions": [
+        "entity-add-label", "entity-remove-label"
+      ]
+    },
+    {
+      "itemId":            15,
+      "name":              "entity-business-metadata",
+      "parent":            "entity",
+      "level":             40,
+      "type":              "string",
+      "mandatory":         true,
+      "isValidLeaf":       true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "true" },
+      "label":             "Business Metadata",
+      "description":       "Business Metadata",
+      "accessTypeRestrictions": [
+        "entity-update-business-metadata"
+      ]
+    },
+    {
+      "itemId":            16,
+      "name":              "classification",
+      "parent":            "entity",
+      "level":             40,
+      "type":              "string",
+      "mandatory":         true,
+      "isValidLeaf":       true,
+      "lookupSupported":   true,
+      "excludesSupported": true,
+      "matcher":           
"org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher",
+      "matcherOptions":    { "wildCard": "true", "ignoreCase": "false" },
+      "label":             "Targetted classifications",
+      "description":       "Targetted classifications",
+      "accessTypeRestrictions": [
+        "entity-add-classification", "entity-update-classification", 
"entity-remove-classification"
+      ]
+    }
+  ],
+  "accessTypes": [
+    { "itemId": 1,  "name": "type-create",                     "label": 
"Create Type",              "category": "MANAGE", "impliedGrants": [ 
"type-read" ] },
+    { "itemId": 2,  "name": "type-update",                     "label": 
"Update Type",              "category": "MANAGE", "impliedGrants": [ 
"type-read" ] },
+    { "itemId": 3,  "name": "type-delete",                     "label": 
"Delete Type",              "category": "MANAGE", "impliedGrants": [ 
"type-read" ] },
+    { "itemId": 4,  "name": "entity-read",                     "label": "Read 
Entity",              "category": "READ" },
+    { "itemId": 5,  "name": "entity-create",                   "label": 
"Create Entity",            "category": "CREATE" },
+    { "itemId": 6,  "name": "entity-update",                   "label": 
"Update Entity",            "category": "UPDATE" },
+    { "itemId": 7,  "name": "entity-delete",                   "label": 
"Delete Entity",            "category": "DELETE" },
+    { "itemId": 8,  "name": "entity-add-classification",       "label": "Add 
Classification",       "category": "UPDATE" },
+    { "itemId": 9,  "name": "entity-update-classification",    "label": 
"Update Classification",    "category": "UPDATE" },
+    { "itemId": 10, "name": "entity-remove-classification",    "label": 
"Remove Classification",    "category": "UPDATE" },
+    { "itemId": 11, "name": "admin-export",                    "label": "Admin 
Export",             "category": "MANAGE" },
+    { "itemId": 12, "name": "admin-import",                    "label": "Admin 
Import",             "category": "MANAGE" },
+    { "itemId": 13, "name": "add-relationship",                "label": "Add 
Relationship",         "category": "UPDATE" },
+    { "itemId": 14, "name": "update-relationship",             "label": 
"Update Relationship",      "category": "UPDATE" },
+    { "itemId": 15, "name": "remove-relationship",             "label": 
"Remove Relationship",      "category": "UPDATE" },
+    { "itemId": 16, "name": "admin-purge",                     "label": "Admin 
Purge",              "category": "MANAGE" },
+    { "itemId": 17, "name": "entity-add-label",                "label": "Add 
Label",                "category": "UPDATE" },
+    { "itemId": 18, "name": "entity-remove-label",             "label": 
"Remove Label",             "category": "UPDATE" },
+    { "itemId": 19, "name": "entity-update-business-metadata", "label": 
"Update Business Metadata", "category": "UPDATE" },
+    { "itemId": 20, "name": "type-read",                       "label": "Read 
Type",                "category": "READ" },
+    { "itemId": 21, "name": "admin-audits",                    "label": "Admin 
Audits",             "category": "MANAGE" }
+  ],
+  "configs": [
+    { "itemId": 1, "name": "username",                    "type": "string",   
"mandatory": true,  "label": "Username" },
+    { "itemId": 2, "name": "password",                    "type": "password", 
"mandatory": true,  "label": "Password" },
+    { "itemId": 3, "name": "atlas.rest.address",          "type": "string",   
"mandatory": true,  "label": "REST Url", "defaultValue": 
"http://localhost:21000"; },

Review Comment:
   Corrected spelling of 'Url' to 'URL'.



-- 
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: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to