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 09a880e923..b6724fd5ab 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 @@ -38,7 +38,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; @@ -855,29 +854,8 @@ public VXUser getXUserByUserName(@Context HttpServletRequest request, @PathParam @PreAuthorize("@rangerPreAuthSecurityHandler.isAPIAccessible(\"" + RangerAPIList.GET_X_GROUP_BY_GROUP_NAME + "\")") 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.getUserRoleList().contains(RangerConstants.ROLE_USER)) { - VXUser loggedInVXUser = xUserService.getXUserByUserName(userSession.getLoginId()); - boolean isMatch = false; - - if (loggedInVXUser != null && vXGroup != null) { - List 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 8a6539aff2..d1022826f0 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 @@ -692,18 +692,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); - + Mockito.when(xUserMgr.getXGroup(compareTestVXGroup.getId())).thenReturn(compareTestVXGroup); VXGroup retVxGroup = xUserRest.getXGroupByGroupName(request, compareTestVXGroup.getName()); - Assertions.assertNotNull(retVxGroup); - Assertions.assertEquals(compareTestVXGroup.getClass(), compareTestVXGroup.getClass()); - Assertions.assertEquals(compareTestVXGroup.getId(), compareTestVXGroup.getId()); + Assertions.assertEquals(compareTestVXGroup.getId(), retVxGroup.getId()); + Assertions.assertEquals(compareTestVXGroup.getName(), retVxGroup.getName()); Mockito.verify(xGroupService).getGroupByGroupName(compareTestVXGroup.getName()); + Mockito.verify(xUserMgr).getXGroup(compareTestVXGroup.getId()); } @Test @@ -2288,25 +2285,6 @@ public void test159getXGroupUsersByGroupNameWithNullResult() { Mockito.verify(xUserMgr).getXGroupUserFromMap(groupName); } - @Test - public void test160getXGroupByGroupNameWithNullUser() { - HttpServletRequest request = Mockito.mock(HttpServletRequest.class); - String groupName = "testGroup"; - VXGroup vXGroup = createVXGroup(); - vXGroup.setName(groupName); - - RangerSecurityContext context = new RangerSecurityContext(); - context.setUserSession(null); - RangerContextHolder.setSecurityContext(context); - - Mockito.when(xGroupService.getGroupByGroupName(groupName)).thenReturn(vXGroup); - - VXGroup result = xUserRest.getXGroupByGroupName(request, groupName); - - Assertions.assertEquals(vXGroup, result); - Mockito.verify(xGroupService).getGroupByGroupName(groupName); - } - @Test public void test161getXUserByUserNameWithNullResult() { HttpServletRequest request = Mockito.mock(HttpServletRequest.class);