You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by pr...@apache.org on 2018/03/07 05:44:21 UTC
[1/3] ranger git commit: RANGER-2008: Policy evaluation is failing
for multiline policy conditions.
Repository: ranger
Updated Branches:
refs/heads/master 1d4afbe57 -> 8f1625c26
RANGER-2008: Policy evaluation is failing for multiline policy conditions.
Signed-off-by: pradeep <pr...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/ranger/commit/2109fe04
Tree: http://git-wip-us.apache.org/repos/asf/ranger/tree/2109fe04
Diff: http://git-wip-us.apache.org/repos/asf/ranger/diff/2109fe04
Branch: refs/heads/master
Commit: 2109fe04db224ae91cd9aa98c66cef0af4116d63
Parents: 1d4afbe
Author: ni3galave <ni...@gmail.com>
Authored: Tue Mar 6 15:10:49 2018 +0530
Committer: pradeep <pr...@apache.org>
Committed: Wed Mar 7 09:20:59 2018 +0530
----------------------------------------------------------------------
.../webapp/scripts/views/policies/PermissionList.js | 15 +++++++--------
1 file changed, 7 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ranger/blob/2109fe04/security-admin/src/main/webapp/scripts/views/policies/PermissionList.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/views/policies/PermissionList.js b/security-admin/src/main/webapp/scripts/views/policies/PermissionList.js
index 2d88b02..194f6b6 100644
--- a/security-admin/src/main/webapp/scripts/views/policies/PermissionList.js
+++ b/security-admin/src/main/webapp/scripts/views/policies/PermissionList.js
@@ -651,7 +651,7 @@ define(function(require) {
emptytext : 'Add Conditions',
value : this.conditions,
display: function(value) {
- var continue_ = false, i = 0;
+ var continue_ = false, i = 0, cond = [];
if(!value) {
$(this).empty();
return;
@@ -666,19 +666,18 @@ define(function(require) {
return '';
}
//Add label for policy condition
- var pcond = _.findWhere(that.multiLinecond, { 'name': name})
+ var pcond = _.findWhere(that.multiLinecond, { 'name': name});
if(!_.isUndefined(pcond) && !_.isUndefined(pcond['evaluatorOptions'])
&& ! _.isUndefined(pcond['evaluatorOptions']["ui.isMultiline"])
&& ! _.isUndefined(pcond['evaluatorOptions']['engineName'])){
- val = pcond['evaluatorOptions']['engineName'] + ' Condition'
+ cond.push({ 'type' : name, 'values' : !_.isArray(val) ? [val] : val });
+ val = pcond['evaluatorOptions']['engineName'] + ' Condition';
+ } else {
+ cond.push({ 'type' : name, 'values' : !_.isArray(val) ? val.split(',') : val });
}
i++;
- return '<span class="'+label+' white-space-normal" >'+name+' : '+ _.escape(val) + '</span>';
+ return '<span class="'+label+' white-space-normal" >'+name+' : '+ _.escape(val) + '</span>';
});
- var cond = _.map(value, function(val, name) {
- return {'type' : name, 'values' : !_.isArray(val) ? val.split(',') : val};
- });
-
that.model.set('conditions', cond);
$(this).html(html);
that.ui.addConditionsSpan.find('i').attr('class', 'icon-pencil');
[2/3] ranger git commit: RANGER-2003: On Report page 'User,
Group and Access' details are not shown for policyItem exceeding more
than 25 policies
Posted by pr...@apache.org.
RANGER-2003: On Report page 'User, Group and Access' details are not shown for policyItem exceeding more than 25 policies
Signed-off-by: pradeep <pr...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/ranger/commit/06bf9171
Tree: http://git-wip-us.apache.org/repos/asf/ranger/tree/06bf9171
Diff: http://git-wip-us.apache.org/repos/asf/ranger/diff/06bf9171
Branch: refs/heads/master
Commit: 06bf91715310915cc5e124ead572c4ee866b59d3
Parents: 2109fe0
Author: ni3galave <ni...@gmail.com>
Authored: Thu Mar 1 13:53:12 2018 +0530
Committer: pradeep <pr...@apache.org>
Committed: Wed Mar 7 09:21:04 2018 +0530
----------------------------------------------------------------------
.../scripts/views/reports/UserAccessLayout.js | 51 ++++++++++++--------
1 file changed, 30 insertions(+), 21 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ranger/blob/06bf9171/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js b/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
index db64ee6..95ee3c7 100644
--- a/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
@@ -122,15 +122,20 @@ define(function(require) {'use strict';
var collName = serviceDefName +'PolicyList';
this[collName] = new RangerPolicyList();
this.defaultPageState = this[collName].state;
- this.policyCollList.push({ 'collName' : collName, 'serviceDefName' : serviceDefName})
+ this.policyCollList.push({ 'collName' : collName, 'serviceDefName' : serviceDefName});
+ //set subgrid coll for policy item on pagination
+ this.listenTo(this[collName],'change',function(model){
+ this.setSubgridCollForPolicyItems(model);
+ });
},this);
+
},
initializeServiceDef : function() {
- this.serviceDefList = new RangerServiceDefList();
- this.serviceDefList.fetch({
- cache : false,
- async:false
- });
+ this.serviceDefList = new RangerServiceDefList();
+ this.serviceDefList.fetch({
+ cache : false,
+ async:false
+ });
},
/** all events binding here */
@@ -185,21 +190,7 @@ define(function(require) {'use strict';
if(coll.length >= 1 && !that.allowDownload)
that.allowDownload = true;
_.each(that[collName].models,function(model,ind){
- if (XAUtil.isMaskingPolicy(model.get('policyType'))) {
- //'<name>Collection' must be same as subgrid custom column name
- model.attributes.maskCollection = model.get('dataMaskPolicyItems');
-// Add service type in masking condition
- _.each(model.attributes.dataMaskPolicyItems , function(m){
- m.type = model.collection.queryParams.serviceType;
- })
- } else if (XAUtil.isRowFilterPolicy(model.get('policyType'))) {
- model.attributes.rowlvlCollection = model.get('rowFilterPolicyItems');
- } else {
- model.attributes.allowCollection = model.get('policyItems');
- }
- model.attributes.denyCollection = model.get('denyPolicyItems');
- model.attributes.denyExcludeCollection = model.get('denyExceptions');
- model.attributes.allowExcludeCollection = model.get('allowExceptions');
+ that.setSubgridCollForPolicyItems(model);
});
});
@@ -928,6 +919,24 @@ define(function(require) {'use strict';
}, 1100);
}
},
+
+ setSubgridCollForPolicyItems: function(model){
+ if (XAUtil.isMaskingPolicy(model.get('policyType'))) {
+ //'<name>Collection' must be same as subgrid custom column name
+ model.attributes.maskCollection = model.get('dataMaskPolicyItems');
+ //Add service type in masking condition
+ _.each(model.attributes.dataMaskPolicyItems , function(m){
+ m.type = model.collection.queryParams.serviceType;
+ })
+ } else if (XAUtil.isRowFilterPolicy(model.get('policyType'))) {
+ model.attributes.rowlvlCollection = model.get('rowFilterPolicyItems');
+ } else {
+ model.attributes.allowCollection = model.get('policyItems');
+ }
+ model.attributes.denyCollection = model.get('denyPolicyItems');
+ model.attributes.denyExcludeCollection = model.get('denyExceptions');
+ model.attributes.allowExcludeCollection = model.get('allowExceptions');
+ },
onShowMorePermissions: function(e){
var policyId = $(e.currentTarget).attr('policy-id');
var $td = $(e.currentTarget).parents('td');
[3/3] ranger git commit: RANGER-2011:Level 20 resource value is not
set on UI in Ranger Edit Policy.
Posted by pr...@apache.org.
RANGER-2011:Level 20 resource value is not set on UI in Ranger Edit Policy.
Signed-off-by: pradeep <pr...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/ranger/repo
Commit: http://git-wip-us.apache.org/repos/asf/ranger/commit/8f1625c2
Tree: http://git-wip-us.apache.org/repos/asf/ranger/tree/8f1625c2
Diff: http://git-wip-us.apache.org/repos/asf/ranger/diff/8f1625c2
Branch: refs/heads/master
Commit: 8f1625c26bc0dcd8970867c25b6be0b5afbbcb0f
Parents: 06bf917
Author: ni3galave <ni...@gmail.com>
Authored: Wed Feb 28 19:30:10 2018 +0530
Committer: pradeep <pr...@apache.org>
Committed: Wed Mar 7 09:21:11 2018 +0530
----------------------------------------------------------------------
.../scripts/models/BackboneFormDataType.js | 44 ++++++++++++++++++--
.../scripts/views/policies/RangerPolicyForm.js | 21 +++++++---
.../common/ServiceManagerLayout_tmpl.html | 9 ++--
3 files changed, 63 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/ranger/blob/8f1625c2/security-admin/src/main/webapp/scripts/models/BackboneFormDataType.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/models/BackboneFormDataType.js b/security-admin/src/main/webapp/scripts/models/BackboneFormDataType.js
index 5c06ad9..a928470 100644
--- a/security-admin/src/main/webapp/scripts/models/BackboneFormDataType.js
+++ b/security-admin/src/main/webapp/scripts/models/BackboneFormDataType.js
@@ -89,7 +89,7 @@ define(function(require) {
}
break;
}
- if($.inArray(v.level, samelevelFieldCreated) >= 0){
+ if($.inArray(v.parent, samelevelFieldCreated) >= 0){
return;
}
@@ -141,8 +141,12 @@ define(function(require) {
if(optionsAttrs.length > 1){
var optionsTitle = _.map(optionsAttrs,function(field){ return field.name;});
formObj['sameLevelOpts'] = optionsTitle;
- samelevelFieldCreated.push(v.level);
- fieldName = 'sameLevel'+v.level;
+ samelevelFieldCreated.push(v.parent);
+ if(!_.isUndefined(v.parent)){
+ fieldName = 'sameLevel'+v.level+''+v.parent;
+ }else{
+ fieldName = 'sameLevel'+v.level;
+ }
formObj['title'] = '';
formObj['resourcesAtSameLevel'] = true;
@@ -182,6 +186,7 @@ define(function(require) {
formObj['recursiveSupport'] = v.recursiveSupported;
formObj['name'] = v.name;
formObj['editorAttrs'] = {'data-placeholder': v.label };
+ formObj.fieldAttrs = { 'data-name' : 'field-'+v.name, 'parent' : v.parent };
if(!_.isUndefined(v.lookupSupported) && v.lookupSupported ){
var options = {
'containerCssClass' : v.name,
@@ -196,6 +201,39 @@ define(function(require) {
form.initilializePathPlugin = true;
}
formObj['initilializePathPlugin'] = true;
+ var optionsAttrs = [] ,parentResource;
+ if(!_.isUndefined(v.level)){
+ optionsAttrs = _.filter(config,function(field){
+ if(field.level == v.level && field.parent == v.parent){
+ return field;
+ }
+ });
+ }
+ var resourceDef = _.findWhere(optionsAttrs,{'name':v.name});
+ //for parent leftnode status
+ if(v.parent){
+ parentResource = _.findWhere(config ,{'name':v.parent});
+ }
+ //show only required resources in acccess policy in order to show their access types
+ if(!_.isUndefined(v.parent) && !_.isEmpty(v.parent)
+ && parentResource.isValidLeaf){
+ optionsAttrs.unshift({'level':v.level, name:'none',label:'none'});
+ }
+ if(optionsAttrs.length > 1){
+ var optionsTitle = _.map(optionsAttrs,function(field){ return field.name;});
+ formObj['sameLevelOpts'] = optionsTitle;
+ samelevelFieldCreated.push(v.parent);
+ if(!_.isUndefined(v.parent)){
+ fieldName = 'sameLevel'+v.level+''+v.parent;
+ }else{
+ fieldName = 'sameLevel'+v.level;
+ }
+ formObj['title'] = '';
+ formObj['resourcesAtSameLevel'] = true;
+
+ // formView is used to listen form events
+ formObj['formView'] = form;
+ }
break;
case 'password':formObj.type = 'Password';break;
default:formObj.type = 'Text';
http://git-wip-us.apache.org/repos/asf/ranger/blob/8f1625c2/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyForm.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyForm.js b/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyForm.js
index c4eef7a..04dad2e 100644
--- a/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyForm.js
+++ b/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyForm.js
@@ -214,7 +214,7 @@ define(function(require){
_.each(this.model.get('resources'),function(obj,key){
var resourceDef = _.findWhere(resourceDefList,{'name':key}),
sameLevelResourceDef = [], parentResource ;
- sameLevelResourceDef = _.where(resourceDefList, {'level': resourceDef.level});
+ sameLevelResourceDef = _.where(resourceDefList, {'level': resourceDef.level, 'parent' : resourceDef.parent});
//for parent leftnode status
if(resourceDef.parent){
parentResource = _.findWhere(resourceDefList ,{'name':resourceDef.parent});
@@ -227,9 +227,15 @@ define(function(require){
}
if(sameLevelResourceDef.length > 1){
obj['resourceType'] = key;
- this.model.set('sameLevel'+resourceDef.level, obj)
- //parentShowHide
- this.selectedResourceTypes['sameLevel'+resourceDef.level]=key;
+ if(_.isUndefined(resourceDef.parent)){
+ this.model.set('sameLevel'+resourceDef.level, obj);
+ //parentShowHide
+ this.selectedResourceTypes['sameLevel'+resourceDef.level] = key;
+ }else{
+ this.model.set('sameLevel'+resourceDef.level+resourceDef.parent, obj);
+ this.selectedResourceTypes['sameLevel'+resourceDef.level+resourceDef.parent] = key;
+ }
+
}else{
//single value support
/*if(! XAUtil.isSinglevValueInput(resourceDef) ){
@@ -677,7 +683,12 @@ define(function(require){
var currentResource = _.findWhere(this.getResources(), {'name': name });
//same level type
if(_.isUndefined(this.fields[currentResource.name])){
- var sameLevelName = 'sameLevel'+currentResource.level;
+ if(!_.isUndefined(currentResource.parent)){
+ var sameLevelName = 'sameLevel'+currentResource.level + currentResource.parent;
+ }else{
+ var sameLevelName = 'sameLevel'+currentResource.level;
+ }
+
name = this.fields[sameLevelName].editor.$resourceType.val()
val = this.fields[sameLevelName].getValue();
if(isCurrentSameLevelField){
http://git-wip-us.apache.org/repos/asf/ranger/blob/8f1625c2/security-admin/src/main/webapp/templates/common/ServiceManagerLayout_tmpl.html
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/templates/common/ServiceManagerLayout_tmpl.html b/security-admin/src/main/webapp/templates/common/ServiceManagerLayout_tmpl.html
index fec2535..d4d19a6 100644
--- a/security-admin/src/main/webapp/templates/common/ServiceManagerLayout_tmpl.html
+++ b/security-admin/src/main/webapp/templates/common/ServiceManagerLayout_tmpl.html
@@ -36,10 +36,12 @@
<th>
<span class="policy-title">
<!-- Remove alt attribut from img tag -->
- <img src="images/folder-grey.png">
- {{./this.attributes.name}}
+ <span>
+ <img src="images/folder-grey.png">
+ {{./this.attributes.name}}
+ </span>
{{#if ../operation}}
-
+ <span>
<a href="javascript:void(0)" title="Export" type="button" class="download pull-right text-decoration" data-id="downloadBtnOnService" data-servicetype="{{./this.attributes.name}}" style="margin-right: 5px;" >
<i class="icon-external-link-sign"> </i>
</a>
@@ -49,6 +51,7 @@
</a>
<a href="#!/service/{{./this.id}}/create"class="pull-right text-decoration" title="Add New Service" style="margin-right: 2px;"> <i class="icon-plus"></i></a>
+ </span>
{{/if}}
</span>