You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by ma...@apache.org on 2015/08/19 17:26:40 UTC

incubator-ranger git commit: RANGER-611 : Update policy listing page with a new column Policy Type

Repository: incubator-ranger
Updated Branches:
  refs/heads/tag-policy 722a5ba49 -> 7ac1b6c87


RANGER-611 : Update policy listing page with a new column Policy Type

Signed-off-by: Madhan Neethiraj <ma...@apache.org>


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

Branch: refs/heads/tag-policy
Commit: 7ac1b6c87d6363ac2b124a1e2d843ff185de5109
Parents: 722a5ba
Author: Gautam Borad <gb...@gmail.com>
Authored: Wed Aug 19 18:16:43 2015 +0530
Committer: Madhan Neethiraj <ma...@apache.org>
Committed: Wed Aug 19 08:07:59 2015 -0700

----------------------------------------------------------------------
 .../java/org/apache/ranger/rest/AssetREST.java  |  2 +-
 .../ranger/service/XAccessAuditService.java     |  2 +-
 .../views/policies/RangerPolicyTableLayout.js   | 26 +++++++++++++++++---
 .../views/reports/PlugableServiceDiffDetail.js  | 14 +++++++++++
 .../scripts/views/reports/UserAccessLayout.js   | 11 +++++++++
 5 files changed, 50 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ac1b6c8/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java b/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
index b931f7b..1739b90 100644
--- a/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
+++ b/security-admin/src/main/java/org/apache/ranger/rest/AssetREST.java
@@ -633,7 +633,7 @@ public class AssetREST {
 		searchUtil.extractDate(request, searchCriteria, "endDate", "endDate",
 				"MM/dd/yyyy");
 
-		searchUtil.extractStringList(request, searchCriteria, "tags", "Tag List", "tags", null, null);
+		searchUtil.extractString(request, searchCriteria, "tags", "tags", null);
 		return assetMgr.getAccessLogs(searchCriteria);
 	}
 	

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ac1b6c8/security-admin/src/main/java/org/apache/ranger/service/XAccessAuditService.java
----------------------------------------------------------------------
diff --git a/security-admin/src/main/java/org/apache/ranger/service/XAccessAuditService.java b/security-admin/src/main/java/org/apache/ranger/service/XAccessAuditService.java
index 20079fb..2bca389 100644
--- a/security-admin/src/main/java/org/apache/ranger/service/XAccessAuditService.java
+++ b/security-admin/src/main/java/org/apache/ranger/service/XAccessAuditService.java
@@ -100,7 +100,7 @@ public class XAccessAuditService extends XAccessAuditServiceBase<XXAccessAudit,
 				DATA_TYPE.DATE, SEARCH_TYPE.GREATER_EQUAL_THAN));
 		searchFields.add(new SearchField("endDate", "obj.eventTime", 
 				DATA_TYPE.DATE, SEARCH_TYPE.LESS_EQUAL_THAN));
-		searchFields.add(new SearchField("tags", "obj.tags", DATA_TYPE.STR_LIST, SEARCH_TYPE.PARTIAL));
+		searchFields.add(new SearchField("tags", "obj.tags", DATA_TYPE.STRING, SEARCH_TYPE.PARTIAL));
 		sortFields.add(new SortField("eventTime", "obj.eventTime", true, SORT_ORDER.DESC));
 }
 

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ac1b6c8/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js b/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
index e306ec4..93cffce 100644
--- a/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/policies/RangerPolicyTableLayout.js
@@ -169,6 +169,17 @@ define(function(require){
 					editable: false,
 					sortable : false
 				},	
+				policyType : {
+					cell : 'html',
+					label	: localization.tt("lbl.policyType"),
+					formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
+						fromRaw: function (rawValue) {
+							return rawValue === 0 ? '<label label-success">Allow</label>' : rawValue === 1 ? '<label label-important">Deny</label>' : '<label label-success">Exclusive Allow</label>'; 
+						}
+					}),
+					editable: false,
+					sortable : false
+				},
 				isEnabled:{
 					label:localization.tt('lbl.status'),
 					cell :"html",
@@ -319,11 +330,13 @@ define(function(require){
 		addVisualSearch : function(){
 			var that = this;
 			var resourceSearchOpt = _.map(this.rangerServiceDefModel.get('resources'), function(resource){ return XAUtil.capitaliseFirstLetter(resource.name) });
-	
-			var searchOpt = ['Policy Name','Group Name','User Name','Status'];//,'Start Date','End Date','Today'];
+			
+			var PolicyListValue = _.map(XAEnums.PolicyType, function(type) { return { 'label': type.label, 'value': type.value};});
+			var searchOpt = ['Policy Name','Group Name','User Name','Status','Policy Type'];//,'Start Date','End Date','Today'];
 			searchOpt = _.union(searchOpt, resourceSearchOpt)
 			var serverAttrName  = [{text : "Policy Name", label :"policyName"},{text : "Group Name", label :"group"},
-			                       {text : "User Name", label :"user"}, {text : "Status", label :"isEnabled"}];
+			                       {text : "User Name", label :"user"}, {text : "Status", label :"isEnabled"},
+			                       {text : "Policy Type", label :"policyType",'multiple' : true, 'optionsArr' : PolicyListValue}];
 			                     // {text : 'Start Date',label :'startDate'},{text : 'End Date',label :'endDate'},
 				                 //  {text : 'Today',label :'today'}];
 			var serverRsrcAttrName = _.map(resourceSearchOpt,function(opt){ 
@@ -341,6 +354,10 @@ define(function(require){
 									case 'Status':
 										callback(that.getActiveStatusNVList());
 										break;
+									case 'Policy Type':
+										callback(that.getNameOfPolicyTypeNVList());
+//										callback(XAUtil.enumToSelectLabelValuePairs(XAEnums.PolicyType));
+										break;		
 								/*	case 'Audit Status':
 										callback(XAUtil.enumToSelectLabelValuePairs(XAEnums.AuthType));
 										break;	
@@ -368,6 +385,9 @@ define(function(require){
 			});
 			return _.map(activeStatusList, function(status) { return { 'label': status.label, 'value': status.label.toLowerCase()}; })
 		},
+		getNameOfPolicyTypeNVList : function() {
+			return _.map(XAEnums.PolicyType, function(type) { return { 'label': type.label, 'value': type.label};});
+		},
 		/** on close */
 		onClose: function(){
 		}

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ac1b6c8/security-admin/src/main/webapp/scripts/views/reports/PlugableServiceDiffDetail.js
----------------------------------------------------------------------
diff --git a/security-admin/src/main/webapp/scripts/views/reports/PlugableServiceDiffDetail.js b/security-admin/src/main/webapp/scripts/views/reports/PlugableServiceDiffDetail.js
index ceb8898..40db4cb 100644
--- a/security-admin/src/main/webapp/scripts/views/reports/PlugableServiceDiffDetail.js
+++ b/security-admin/src/main/webapp/scripts/views/reports/PlugableServiceDiffDetail.js
@@ -216,6 +216,20 @@ define(function(require){
 			if(!_.isUndefined(policyItems)){
 				this.getPolicyItems();
 			}
+			var policyType = this.collection.findWhere({'attributeName':'Policy Type'});
+			/*if(this.action == 'delete'){
+				this.template = PolicyOperationDiff_tmpl;
+			}*/
+			if(!_.isUndefined(policyType)){
+				if(!_.isEmpty(policyType.get('previousValue'))){
+					var tmp = this.collection.get(policyType.id);
+					tmp.set("previousValue", policyType.get('previousValue') ===  "0" ? 'Allow' : policyType.get('previousValue') ===  "1" ? 'Deny' : "Exclusive Allow");
+				}
+				if(!_.isEmpty(policyType.get('newValue'))){
+					var tmp = this.collection.get(policyType.id);
+					tmp.set("newValue", policyType.get('newValue') ===  "0" ? 'Allow' : policyType.get('newValue') ===  "1" ? 'Deny' : "Exclusive Allow");
+				}
+			}
 		},
 		getPolicyResources : function() {
 			var policyResources = this.collection.findWhere({'attributeName':'Policy Resources'});

http://git-wip-us.apache.org/repos/asf/incubator-ranger/blob/7ac1b6c8/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 b1ed454..5c5309d 100644
--- a/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
+++ b/security-admin/src/main/webapp/scripts/views/reports/UserAccessLayout.js
@@ -208,6 +208,17 @@ define(function(require) {'use strict';
 					label	: localization.tt("lbl.policyName"),
 					editable: false,
 					sortable : false
+				},
+				policyType : {
+					cell : 'html',
+					label	: localization.tt("lbl.policyType"),
+					formatter: _.extend({}, Backgrid.CellFormatter.prototype, {
+						fromRaw: function (rawValue) {
+							return rawValue === 0 ? '<label label-success">Allow</label>' : rawValue === 1 ? '<label label-important">Deny</label>' : '<label label-success">Exclusive Allow</label>'; 
+						}
+					}),
+					editable: false,
+					sortable : false
 				},	
 				isEnabled:{
 					label:localization.tt('lbl.status'),