You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ranger.apache.org by me...@apache.org on 2019/10/17 14:37:00 UTC

[ranger] branch master updated: RANGER-2619 : Admin Audit Details not displayed for edit role

This is an automated email from the ASF dual-hosted git repository.

mehul pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/ranger.git


The following commit(s) were added to refs/heads/master by this push:
     new 28c1fe7  RANGER-2619 : Admin Audit Details not displayed for edit role
28c1fe7 is described below

commit 28c1fe70c9ae30adc60968681dbb6f85e9981ee5
Author: mateenmansoori <ma...@gmail.com>
AuthorDate: Tue Oct 15 15:51:17 2019 +0530

    RANGER-2619 : Admin Audit Details not displayed for edit role
    
    Signed-off-by: Mehul Parikh <me...@apache.org>
---
 .../org/apache/ranger/common/RangerConstants.java  |  1 +
 .../apache/ranger/service/RangerRoleService.java   | 35 ++++++++++------------
 2 files changed, 17 insertions(+), 19 deletions(-)

diff --git a/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java b/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java
index 17d74d5..bb79bb8 100644
--- a/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java
+++ b/security-admin/src/main/java/org/apache/ranger/common/RangerConstants.java
@@ -42,6 +42,7 @@ public class RangerConstants extends RangerCommonEnums {
 	public final static String GROUP_PUBLIC = "public";
     public final static String ROLE_ADMIN_AUDITOR = "ROLE_ADMIN_AUDITOR";
     public final static String ROLE_KEY_ADMIN_AUDITOR = "ROLE_KEY_ADMIN_AUDITOR";
+    public final static String ROLE_FIELD = "Roles";
 	// Action constants
 	public final static String ACTION_EDIT = "edit";
 	public final static String ACTION_CHANGE = "change";
diff --git a/security-admin/src/main/java/org/apache/ranger/service/RangerRoleService.java b/security-admin/src/main/java/org/apache/ranger/service/RangerRoleService.java
index ce2dc35..9699aa7 100644
--- a/security-admin/src/main/java/org/apache/ranger/service/RangerRoleService.java
+++ b/security-admin/src/main/java/org/apache/ranger/service/RangerRoleService.java
@@ -178,15 +178,15 @@ public class RangerRoleService extends RangerRoleServiceBase<XXRole, RangerRole>
                 } else {
                     value = "" + field.get(current);
                                         if (fieldName.equalsIgnoreCase(users) || fieldName.equalsIgnoreCase(groups)
-                                                        || fieldName.equalsIgnoreCase("Roles")) {
+                                                        || fieldName.equalsIgnoreCase(RangerConstants.ROLE_FIELD)) {
                                                 if (fieldName.equalsIgnoreCase(users)) {
-                                                        value = !stringUtil.isEmpty(current.getUsers()) ? JsonUtils.listToJson(current.getUsers()) : null;
+                                                        value = JsonUtils.listToJson(current.getUsers());
                                                 }
-                                                if (fieldName.equalsIgnoreCase(groups)) {
-                                                        value = !stringUtil.isEmpty(current.getGroups()) ? JsonUtils.listToJson(current.getGroups()) : null;
+                                                else if (fieldName.equalsIgnoreCase(groups)) {
+                                                        value = JsonUtils.listToJson(current.getGroups());
                                                 }
-                                                if (fieldName.equalsIgnoreCase("Roles")) {
-                                                        value = !stringUtil.isEmpty(current.getRoles()) ? JsonUtils.listToJson(current.getRoles()) : null;
+                                                else if (fieldName.equalsIgnoreCase(RangerConstants.ROLE_FIELD)) {
+                                                        value = JsonUtils.listToJson(current.getRoles());
                                                 }
                                         }
                     if ((value == null || "null".equalsIgnoreCase(value))
@@ -218,22 +218,24 @@ public class RangerRoleService extends RangerRoleServiceBase<XXRole, RangerRole>
                             else {
                                 formerValue = mField.get(former) + "";
                                                                 if (fieldName.equalsIgnoreCase(users) || fieldName.equalsIgnoreCase(groups)
-                                                                                || fieldName.equalsIgnoreCase("Roles")) {
+                                                                                || fieldName.equalsIgnoreCase(RangerConstants.ROLE_FIELD)) {
                                                                         if (fieldName.equalsIgnoreCase(users)) {
-                                                                                formerValue = !stringUtil.isEmpty(former.getUsers()) ? JsonUtils.listToJson(former.getUsers()) : null;
+                                                                                formerValue = JsonUtils.listToJson(former.getUsers());
                                                                         }
-                                                                        if (fieldName.equalsIgnoreCase(groups)) {
-                                                                                formerValue = !stringUtil.isEmpty(former.getGroups()) ? JsonUtils.listToJson(former.getGroups()) : null;
+                                                                        else if (fieldName.equalsIgnoreCase(groups)) {
+                                                                                formerValue = JsonUtils.listToJson(former.getGroups());
                                                                         }
-                                                                        if (fieldName.equalsIgnoreCase("Roles")) {
-                                                                                formerValue = !stringUtil.isEmpty(former.getRoles()) ? JsonUtils.listToJson(former.getRoles()) : null;
+                                                                        else if (fieldName.equalsIgnoreCase(RangerConstants.ROLE_FIELD)) {
+                                                                                formerValue = JsonUtils.listToJson(former.getRoles());
                                                                         }
                                                                 }
                             }
                             break;
                         }
                     }
-                    if (formerValue == null || formerValue.equalsIgnoreCase(value)) {
+                    value = ((value == null) ? "" : value);
+                    formerValue = ((formerValue == null) ? "" : formerValue);
+                    if (formerValue.equalsIgnoreCase(value)) {
                         continue;
                     }
                     xTrxLog.setPreviousValue(formerValue);
@@ -248,12 +250,7 @@ public class RangerRoleService extends RangerRoleServiceBase<XXRole, RangerRole>
                 if(logger.isDebugEnabled()) {
                     logger.debug("trxLogList is empty!!");
                 }
-                XXTrxLog xTrxLog = new XXTrxLog();
-                xTrxLog.setAction(action);
-                xTrxLog.setObjectClassType(AppConstants.CLASS_TYPE_RANGER_ROLE);
-                xTrxLog.setObjectId(current.getId());
-                xTrxLog.setObjectName(objectName);
-                trxLogList.add(xTrxLog);
+               trxLogList = null;
             }
         } catch (IllegalAccessException e) {
             logger.error("Transaction log failure.", e);