Repository: ranger Updated Branches: refs/heads/ranger-0.7 2fe9797ae -> 63ed5feb1
RANGER-2209: Added service definition for ABFS Signed-off-by: Velmurugan Periasamy <[email protected]> Project: http://git-wip-us.apache.org/repos/asf/ranger/repo Commit: http://git-wip-us.apache.org/repos/asf/ranger/commit/63ed5feb Tree: http://git-wip-us.apache.org/repos/asf/ranger/tree/63ed5feb Diff: http://git-wip-us.apache.org/repos/asf/ranger/diff/63ed5feb Branch: refs/heads/ranger-0.7 Commit: 63ed5feb116d789ee827c7577e6d93267860c4ef Parents: 2fe9797 Author: Yuan Gao <[email protected]> Authored: Fri Aug 17 10:56:22 2018 -0700 Committer: Velmurugan Periasamy <[email protected]> Committed: Tue Oct 16 19:12:31 2018 -0400 ---------------------------------------------------------------------- .../plugin/store/EmbeddedServiceDefsUtil.java | 5 + .../service-defs/ranger-servicedef-abfs.json | 123 +++++++++++++++++++ 2 files changed, 128 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/ranger/blob/63ed5feb/agents-common/src/main/java/org/apache/ranger/plugin/store/EmbeddedServiceDefsUtil.java ---------------------------------------------------------------------- diff --git a/agents-common/src/main/java/org/apache/ranger/plugin/store/EmbeddedServiceDefsUtil.java b/agents-common/src/main/java/org/apache/ranger/plugin/store/EmbeddedServiceDefsUtil.java index de12f89..7abcede 100755 --- a/agents-common/src/main/java/org/apache/ranger/plugin/store/EmbeddedServiceDefsUtil.java +++ b/agents-common/src/main/java/org/apache/ranger/plugin/store/EmbeddedServiceDefsUtil.java @@ -63,6 +63,7 @@ public class EmbeddedServiceDefsUtil { public static final String EMBEDDED_SERVICEDEF_NIFI_NAME = "nifi"; public static final String EMBEDDED_SERVICEDEF_ATLAS_NAME = "atlas"; public static final String EMBEDDED_SERVICEDEF_WASB_NAME = "wasb"; + public static final String EMBEDDED_SERVICEDEF_ABFS_NAME = "abfs"; public static final String PROPERTY_CREATE_EMBEDDED_SERVICE_DEFS = "ranger.service.store.create.embedded.service-defs"; @@ -93,6 +94,7 @@ public class EmbeddedServiceDefsUtil { private RangerServiceDef nifiServiceDef = null; private RangerServiceDef atlasServiceDef = null; private RangerServiceDef wasbServiceDef = null; + private RangerServiceDef abfsServiceDef = null; private RangerServiceDef tagServiceDef = null; @@ -133,6 +135,7 @@ public class EmbeddedServiceDefsUtil { tagServiceDef = getOrCreateServiceDef(store, EMBEDDED_SERVICEDEF_TAG_NAME); wasbServiceDef = getOrCreateServiceDef(store, EMBEDDED_SERVICEDEF_WASB_NAME); + abfsServiceDef = getOrCreateServiceDef(store, EMBEDDED_SERVICEDEF_ABFS_NAME); // Ensure that tag service def is updated with access types of all service defs @@ -192,6 +195,8 @@ public class EmbeddedServiceDefsUtil { public long getWasbServiceDefId() { return getId(wasbServiceDef); } + public long getAbfsServiceDefId() { return getId(abfsServiceDef); } + public RangerServiceDef getEmbeddedServiceDef(String defType) throws Exception { RangerServiceDef serviceDef=null; if(StringUtils.isNotEmpty(defType)){ http://git-wip-us.apache.org/repos/asf/ranger/blob/63ed5feb/agents-common/src/main/resources/service-defs/ranger-servicedef-abfs.json ---------------------------------------------------------------------- diff --git a/agents-common/src/main/resources/service-defs/ranger-servicedef-abfs.json b/agents-common/src/main/resources/service-defs/ranger-servicedef-abfs.json new file mode 100644 index 0000000..18454de --- /dev/null +++ b/agents-common/src/main/resources/service-defs/ranger-servicedef-abfs.json @@ -0,0 +1,123 @@ +{ + "id":103, + "name": "abfs", + "implClass": "", + "label": "Azure Blob File System", + "description": "Ranger plugin for ABFS", + "guid":"", + "options": { "enableDenyAndExceptionsInPolicies": "true" }, + "resources": [ + { + "itemId": 1, + "name": "storageaccount", + "type": "string", + "parent": "", + "level": 10, + "mandatory": true, + "lookupSupported": false, + "excludesSupported": false, + "matcher": "org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher", + "matcherOptions": {"wildCard":true, "ignoreCase":false}, + "validationRegEx": "", + "validationMessage": "", + "uiHint": "", + "label": "Storage Account", + "description": "Storage Account for the Path" + }, + { + "itemId":2, + "name": "container", + "type": "string", + "parent": "storageaccount", + "level":20, + "mandatory": true, + "lookupSupported": false, + "excludesSupported": false, + "matcher": "org.apache.ranger.plugin.resourcematcher.RangerDefaultResourceMatcher", + "matcherOptions": {"wildCard":true, "ignoreCase":false}, + "validationRegEx":"", + "validationMessage": "", + "uiHint":"", + "label": "Storage Account Container", + "description": "Storage Account Container for the Path" + }, + { + "itemId":3, + "name": "relativepath", + "type": "path", + "parent": "container", + "level":30, + "mandatory": true, + "lookupSupported": true, + "recursiveSupported": true, + "excludesSupported": false, + "matcher": "org.apache.ranger.plugin.resourcematcher.RangerPathResourceMatcher", + "matcherOptions": {"wildCard":true, "ignoreCase":false}, + "validationRegEx":"^[/*]$|^\/.*?[^\/]$", + "validationMessage": "Relative Path must not end with a slash", + "uiHint":"", + "label": "Relative Path", + "description": "Relative Path inside Storage Account Container" + } + ], + "accessTypes": + [ + { + "itemId": 1, + "name": "read", + "label": "Read" + }, + { + "itemId": 2, + "name": "write", + "label": "Write" + } + ], + "configs": + [ + { + "itemId": 1, + "name": "username", + "type": "string", + "subType": "", + "mandatory": false, + "validationRegEx":"", + "validationMessage": "", + "uiHint":"", + "label": "Username" + }, + { + "itemId": 2, + "name": "password", + "type": "string", + "subType": "", + "mandatory": false, + "validationRegEx":"", + "validationMessage": "", + "uiHint":"", + "label": "Password" + }, + { + "itemId":3, + "name": "commonNameForCertificate", + "type": "string", + "subType": "", + "mandatory": false, + "validationRegEx":"", + "validationMessage": "", + "uiHint":"", + "label": "Common Name for Certificate" + } + ], + "contextEnrichers": [], + "policyConditions": + [ + { + "itemId": 1, + "name": "ip-range", + "evaluator": "org.apache.ranger.plugin.conditionevaluator.RangerIpMatcher", + "label": "IP Address Range", + "description": "IP Address Range" + } + ] +} \ No newline at end of file
