This is an automated email from the ASF dual-hosted git repository.
ramackri pushed a commit to branch ranger-2.9
in repository https://gitbox.apache.org/repos/asf/ranger.git
The following commit(s) were added to refs/heads/ranger-2.9 by this push:
new d02d53f15 RANGER-5624: Fix inconsistent updatedBy masking in groupName
API (#1055)
d02d53f15 is described below
commit d02d53f152a472a97f87e501a7d607867c0d75c2
Author: KRISHNA CHAITANYA MUTTEVI
<[email protected]>
AuthorDate: Thu Jul 9 15:52:15 2026 +0530
RANGER-5624: Fix inconsistent updatedBy masking in groupName API (#1055)
---
.../main/java/org/apache/ranger/rest/XUserREST.java | 21 ++-------------------
.../java/org/apache/ranger/rest/TestXUserREST.java | 13 +++++--------
2 files changed, 7 insertions(+), 27 deletions(-)
diff --git a/security-admin/src/main/java/org/apache/ranger/rest/XUserREST.java
b/security-admin/src/main/java/org/apache/ranger/rest/XUserREST.java
index 6be57cd16..36b9f0816 100755
--- a/security-admin/src/main/java/org/apache/ranger/rest/XUserREST.java
+++ b/security-admin/src/main/java/org/apache/ranger/rest/XUserREST.java
@@ -61,7 +61,6 @@
import org.apache.ranger.common.annotation.RangerAnnotationClassName;
import org.apache.ranger.common.annotation.RangerAnnotationJSMgrName;
import org.apache.ranger.db.RangerDaoManager;
-import org.apache.ranger.entity.XXGroup;
import org.apache.ranger.entity.XXService;
import org.apache.ranger.entity.XXServiceDef;
import org.apache.ranger.plugin.model.RangerPluginInfo;
@@ -835,24 +834,8 @@ public VXUser getXUserByUserName(@Context
HttpServletRequest request,
public VXGroup getXGroupByGroupName(@Context HttpServletRequest request,
@PathParam("groupName") String groupName) {
VXGroup vXGroup = xGroupService.getGroupByGroupName(groupName);
- UserSessionBase userSession =
ContextUtil.getCurrentUserSession();
- if (userSession != null && userSession.getLoginId() != null &&
userSession.isSingleRoleUserSession()) {
- VXUser loggedInVXUser =
xUserService.getXUserByUserName(userSession.getLoginId());
- boolean isMatch = false;
- if (loggedInVXUser != null && vXGroup != null) {
- List<XXGroup> userGroups =
xGroupService.getGroupsByUserId(loggedInVXUser.getId());
- for (XXGroup xXGroup: userGroups) {
- if (xXGroup != null &&
StringUtils.equals(xXGroup.getName(), vXGroup.getName())) {
- isMatch = true;
- break;
- }
- }
- }
- if (!isMatch) {
- vXGroup = null;
- }
- }
- return vXGroup;
+ Long id = vXGroup.getId();
+ return xUserMgr.getXGroup(id);
}
@DELETE
diff --git
a/security-admin/src/test/java/org/apache/ranger/rest/TestXUserREST.java
b/security-admin/src/test/java/org/apache/ranger/rest/TestXUserREST.java
index a324f9afa..2e7e4b7d9 100644
--- a/security-admin/src/test/java/org/apache/ranger/rest/TestXUserREST.java
+++ b/security-admin/src/test/java/org/apache/ranger/rest/TestXUserREST.java
@@ -1027,18 +1027,15 @@ public void test62getXUserByUserName() {
}
@Test
public void test63getXGroupByGroupName() {
- HttpServletRequest request =
Mockito.mock(HttpServletRequest.class);
-
VXGroup compareTestVXGroup=createVXGroup();
-
Mockito.when(xGroupService.getGroupByGroupName(compareTestVXGroup.getName())).thenReturn(compareTestVXGroup);
-
- VXGroup retVxGroup=
xUserRest.getXGroupByGroupName(request,compareTestVXGroup.getName());
-
+
Mockito.when(xUserMgr.getXGroup(compareTestVXGroup.getId())).thenReturn(compareTestVXGroup);
+ VXGroup retVxGroup = xUserRest.getXGroupByGroupName(request,
compareTestVXGroup.getName());
assertNotNull(retVxGroup);
-
assertEquals(compareTestVXGroup.getClass(),compareTestVXGroup.getClass());
-
assertEquals(compareTestVXGroup.getId(),compareTestVXGroup.getId());
+ assertEquals(compareTestVXGroup.getId(), retVxGroup.getId());
+ assertEquals(compareTestVXGroup.getName(),
retVxGroup.getName());
Mockito.verify(xGroupService).getGroupByGroupName(compareTestVXGroup.getName());
+ Mockito.verify(xUserMgr).getXGroup(compareTestVXGroup.getId());
}
@Test
public void test64deleteXUserByUserName() {