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 2022/12/01 16:26:07 UTC

[ranger] branch ranger-2.4 updated: RANGER-3825: Ranger admin user is unable to change another user email after the upgrade

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

pradeep pushed a commit to branch ranger-2.4
in repository https://gitbox.apache.org/repos/asf/ranger.git


The following commit(s) were added to refs/heads/ranger-2.4 by this push:
     new 1f7e5a025 RANGER-3825: Ranger admin user is unable to change another user email after the upgrade
1f7e5a025 is described below

commit 1f7e5a025f537fa54e9a0929340aaa8a7d8f1465
Author: pradeep <pr...@apache.org>
AuthorDate: Wed Sep 28 19:27:36 2022 +0530

    RANGER-3825: Ranger admin user is unable to change another user email after the upgrade
---
 .../src/main/java/org/apache/ranger/biz/UserMgr.java     | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java b/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java
index f921654cc..eaaa15a11 100644
--- a/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java
+++ b/security-admin/src/main/java/org/apache/ranger/biz/UserMgr.java
@@ -530,17 +530,17 @@ public class UserMgr {
 												MessageEnums.OPER_NO_PERMISSION, null, null, ""
 														+ changeEmail);
 					}
-			} else {
-				String encryptedOldPwd = encrypt(gjUser.getLoginId(), changeEmail.getOldPassword());
+		} else {
+			String encryptedOldPwd = encrypt(gjUser.getLoginId(), changeEmail.getOldPassword());
+			if (!stringUtil.equals(encryptedOldPwd, gjUser.getPassword())) {
+				encryptedOldPwd = encryptWithOlderAlgo(gjUser.getLoginId(), changeEmail.getOldPassword());
 				if (!stringUtil.equals(encryptedOldPwd, gjUser.getPassword())) {
-					logger.info("changeEmailAddress(). Invalid  password. changeEmail="
-							+ changeEmail);
-					throw restErrorUtil.createRESTException(
-							"serverMsg.userMgrWrongPassword",
-							MessageEnums.OPER_NO_PERMISSION, null, null, ""
-									+ changeEmail);
+					logger.info("changeEmailAddress(). Invalid  password. changeEmail=" + changeEmail);
+					throw restErrorUtil.createRESTException("serverMsg.userMgrWrongPassword",
+							MessageEnums.OPER_NO_PERMISSION, null, null, "" + changeEmail);
 				}
 			}
+		}
 
 		// Normalize email. Make it lower case
 		gjUser.setEmailAddress(stringUtil.normalizeEmail(changeEmail