Repository: ambari Updated Branches: refs/heads/branch-feature-AMBARI-20859 d7bc588a1 -> f76c87a69
http://git-wip-us.apache.org/repos/asf/ambari/blob/f76c87a6/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/TestUsers.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/TestUsers.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/TestUsers.java index e29791f..e049b4e 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/TestUsers.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/TestUsers.java @@ -24,6 +24,7 @@ import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; import java.sql.SQLException; +import java.util.Collection; import java.util.List; import org.apache.ambari.server.AmbariException; @@ -42,6 +43,7 @@ import org.apache.ambari.server.orm.entities.PrincipalEntity; import org.apache.ambari.server.orm.entities.PrincipalTypeEntity; import org.apache.ambari.server.orm.entities.ResourceEntity; import org.apache.ambari.server.orm.entities.ResourceTypeEntity; +import org.apache.ambari.server.orm.entities.UserAuthenticationEntity; import org.apache.ambari.server.orm.entities.UserEntity; import org.junit.After; import org.junit.Before; @@ -125,65 +127,94 @@ public class TestUsers { @Test public void testIsUserCanBeRemoved() throws Exception { - users.createUser("admin", "admin", UserType.LOCAL, true, true); - users.createUser("admin222", "admin222", UserType.LOCAL, true, true); + UserEntity userEntity; + + userEntity = users.createUser("admin", "admin", "admin"); + users.grantAdminPrivilege(userEntity); + + userEntity = users.createUser("admin222", "admin222", "admin22"); + users.grantAdminPrivilege(userEntity); Assert.assertTrue(users.isUserCanBeRemoved(userDAO.findUserByName("admin"))); Assert.assertTrue(users.isUserCanBeRemoved(userDAO.findUserByName("admin222"))); - users.removeUser(users.getAnyUser("admin222")); + users.removeUser(users.getUser("admin222")); Assert.assertFalse(users.isUserCanBeRemoved(userDAO.findUserByName("admin"))); - users.createUser("user", "user"); + users.createUser("user", "user", "user"); Assert.assertFalse(users.isUserCanBeRemoved(userDAO.findUserByName("admin"))); - users.createUser("admin333", "admin333", UserType.LOCAL, true, true); + userEntity = users.createUser("admin333", "admin333", "admin333"); + users.grantAdminPrivilege(userEntity); + Assert.assertTrue(users.isUserCanBeRemoved(userDAO.findUserByName("admin"))); Assert.assertTrue(users.isUserCanBeRemoved(userDAO.findUserByName("admin333"))); } @Test public void testModifyPassword_UserByAdmin() throws Exception { - users.createUser("admin", "admin", UserType.LOCAL, true, true); - users.createUser("user", "user"); + UserEntity userEntity; + + userEntity = users.createUser("admin", "admin", "admin"); + users.grantAdminPrivilege(userEntity); + users.addLocalAuthentication(userEntity, "admin"); - UserEntity userEntity = userDAO.findUserByName("user"); + userEntity = users.createUser("user", "user", "user"); + users.addLocalAuthentication(userEntity, "user"); - assertNotSame("user", userEntity.getUserPassword()); - assertTrue(passwordEncoder.matches("user", userEntity.getUserPassword())); + UserEntity foundUserEntity = userDAO.findUserByName("user"); + assertNotNull(foundUserEntity); - users.modifyPassword("user", "admin", "user_new_password"); - assertTrue(passwordEncoder.matches("user_new_password", userDAO.findUserByName("user").getUserPassword())); + UserAuthenticationEntity foundLocalAuthenticationEntity; + foundLocalAuthenticationEntity = getLocalAuthenticationEntity(foundUserEntity); + assertNotNull(foundLocalAuthenticationEntity); + assertNotSame("user", foundLocalAuthenticationEntity.getAuthenticationKey()); + assertTrue(passwordEncoder.matches("user", foundLocalAuthenticationEntity.getAuthenticationKey())); + + foundUserEntity = userDAO.findUserByName("admin"); + assertNotNull(foundUserEntity); + users.modifyPassword(foundUserEntity, "admin", "user_new_password"); + + foundUserEntity = userDAO.findUserByName("admin"); + assertNotNull(foundUserEntity); + foundLocalAuthenticationEntity = getLocalAuthenticationEntity(foundUserEntity); + assertNotNull(foundLocalAuthenticationEntity); + assertTrue(passwordEncoder.matches("user_new_password", foundLocalAuthenticationEntity.getAuthenticationKey())); } @Test public void testRevokeAdminPrivilege() throws Exception { - users.createUser("old_admin", "old_admin", UserType.LOCAL, true, true); + final UserEntity userEntity = users.createUser("old_admin", "old_admin", "old_admin"); + users.grantAdminPrivilege(userEntity); - final User admin = users.getAnyUser("old_admin"); + final User admin = users.getUser("old_admin"); users.revokeAdminPrivilege(admin.getUserId()); - Assert.assertFalse(users.getAnyUser("old_admin").isAdmin()); + Assert.assertFalse(users.getUser("old_admin").isAdmin()); } @Test public void testGrantAdminPrivilege() throws Exception { - users.createUser("user", "user"); + users.createUser("user", "user", "user"); - final User user = users.getAnyUser("user"); + final User user = users.getUser("user"); users.grantAdminPrivilege(user.getUserId()); - Assert.assertTrue(users.getAnyUser("user").isAdmin()); + Assert.assertTrue(users.getUser("user").isAdmin()); } @Test public void testCreateGetRemoveUser() throws Exception { - users.createUser("user1", "user1"); - users.createUser("user", "user", UserType.LOCAL, false, false); - users.createUser("user_ldap", "user_ldap", UserType.LDAP, true, true); - User createdUser = users.getUser("user", UserType.LOCAL); - User createdUser1 = users.getAnyUser("user1"); - User createdLdapUser = users.getUser("user_ldap", UserType.LDAP); + users.createUser("user1", "user1", null); + users.createUser("user", "user", null, false); + + UserEntity userEntity = users.createUser("user_ldap", "user_ldap", null); + users.grantAdminPrivilege(userEntity); + users.addLdapAuthentication(userEntity, "some dn"); + + User createdUser = users.getUser("user"); + User createdUser1 = users.getUser("user1"); + User createdLdapUser = users.getUser("user_ldap"); Assert.assertEquals("user1", createdUser1.getUserName()); Assert.assertEquals(true, createdUser1.isActive()); @@ -200,21 +231,23 @@ public class TestUsers { Assert.assertEquals(true, createdLdapUser.isLdapUser()); Assert.assertEquals(true, createdLdapUser.isAdmin()); - assertEquals("user", users.getAnyUser("user").getUserName()); - assertEquals("user_ldap", users.getAnyUser("user_ldap").getUserName()); - Assert.assertNull(users.getAnyUser("non_existing")); + assertEquals("user", users.getUser("user").getUserName()); + assertEquals("user_ldap", users.getUser("user_ldap").getUserName()); + Assert.assertNull(users.getUser("non_existing")); // create duplicate user try { - users.createUser("user1", "user1"); + users.createUser("user1", "user1", null); Assert.fail("It shouldn't be possible to create duplicate user"); } catch (AmbariException e) { + // This is expected } try { - users.createUser("USER1", "user1"); + users.createUser("USER1", "user1", null); Assert.fail("It shouldn't be possible to create duplicate user"); } catch (AmbariException e) { + // This is expected } // test get all users @@ -223,9 +256,9 @@ public class TestUsers { Assert.assertEquals(3, userList.size()); // check get any user case insensitive - assertEquals("user", users.getAnyUser("USER").getUserName()); - assertEquals("user_ldap", users.getAnyUser("USER_LDAP").getUserName()); - Assert.assertNull(users.getAnyUser("non_existing")); + assertEquals("user", users.getUser("USER").getUserName()); + assertEquals("user_ldap", users.getUser("USER_LDAP").getUserName()); + Assert.assertNull(users.getUser("non_existing")); // get user by id User userById = users.getUser(createdUser.getUserId()); @@ -239,45 +272,52 @@ public class TestUsers { assertNull(userByInvalidId); // get user if unique - Assert.assertNotNull(users.getUserIfUnique("user")); + Assert.assertNotNull(users.getUser("user")); //remove user Assert.assertEquals(3, users.getAllUsers().size()); - users.removeUser(users.getAnyUser("user1")); + users.removeUser(users.getUser("user1")); - Assert.assertNull(users.getAnyUser("user1")); + Assert.assertNull(users.getUser("user1")); Assert.assertEquals(2, users.getAllUsers().size()); } @Test public void testSetUserActive() throws Exception { - users.createUser("user", "user"); + users.createUser("user", "user", null); users.setUserActive("user", false); - Assert.assertEquals(false, users.getAnyUser("user").isActive()); + Assert.assertEquals(false, users.getUser("user").isActive()); users.setUserActive("user", true); - Assert.assertEquals(true, users.getAnyUser("user").isActive()); + Assert.assertEquals(true, users.getUser("user").isActive()); try { users.setUserActive("fake user", true); Assert.fail("It shouldn't be possible to call setUserActive() on non-existing user"); } catch (Exception ex) { + // This is expected } } @Test public void testSetUserLdap() throws Exception { - users.createUser("user", "user"); - users.createUser("user_ldap", "user_ldap", UserType.LDAP, true, false); + UserEntity userEntity; + + users.createUser("user", "user", null); + users.addLdapAuthentication(users.getUserEntity("user"), "some dn"); - users.setUserLdap("user"); - Assert.assertEquals(true, users.getAnyUser("user").isLdapUser()); + userEntity = users.createUser("user_ldap", "user_ldap", null); + users.addLdapAuthentication(userEntity, "some dn"); + + Assert.assertEquals(true, users.getUser("user").isLdapUser()); + Assert.assertEquals(true, users.getUser("user_ldap").isLdapUser()); try { - users.setUserLdap("fake user"); + users.addLdapAuthentication(users.getUserEntity("fake user"), "some other dn"); Assert.fail("It shouldn't be possible to call setUserLdap() on non-existing user"); } catch (AmbariException ex) { + // This is expected } } @@ -293,6 +333,7 @@ public class TestUsers { users.setGroupLdap("fake group"); Assert.fail("It shouldn't be possible to call setGroupLdap() on non-existing group"); } catch (AmbariException ex) { + // This is expected } } @@ -328,9 +369,9 @@ public class TestUsers { final String groupName2 = "engineering2"; users.createGroup(groupName, GroupType.LOCAL); users.createGroup(groupName2, GroupType.LOCAL); - users.createUser("user1", "user1"); - users.createUser("user2", "user2"); - users.createUser("user3", "user3"); + users.createUser("user1", "user1", null); + users.createUser("user2", "user2", null); + users.createUser("user3", "user3", null); users.addMemberToGroup(groupName, "user1"); users.addMemberToGroup(groupName, "user2"); assertEquals(2, users.getAllMembers(groupName).size()); @@ -340,6 +381,7 @@ public class TestUsers { users.getAllMembers("non existing"); Assert.fail("It shouldn't be possible to call getAllMembers() on non-existing group"); } catch (Exception ex) { + // This is expected } // get members from not unexisting group @@ -356,16 +398,22 @@ public class TestUsers { Authentication auth = new UsernamePasswordAuthenticationToken("user", null); SecurityContextHolder.getContext().setAuthentication(auth); - users.createUser("user", "user"); + UserEntity userEntity = users.createUser("user", "user", null); + users.addLocalAuthentication(userEntity, "user"); - UserEntity userEntity = userDAO.findUserByName("user"); + userEntity = userDAO.findUserByName("user"); + UserAuthenticationEntity localAuthenticationEntity = getLocalAuthenticationEntity(userEntity); + assertNotNull(localAuthenticationEntity); - assertNotSame("user", userEntity.getUserPassword()); - assertTrue(passwordEncoder.matches("user", userEntity.getUserPassword())); + assertNotSame("user", localAuthenticationEntity.getAuthenticationKey()); + assertTrue(passwordEncoder.matches("user", localAuthenticationEntity.getAuthenticationKey())); users.modifyPassword("user", "user", "user_new_password"); + userEntity = userDAO.findUserByName("user"); + localAuthenticationEntity = getLocalAuthenticationEntity(userEntity); + assertNotNull(localAuthenticationEntity); - assertTrue(passwordEncoder.matches("user_new_password", userDAO.findUserByName("user").getUserPassword())); + assertTrue(passwordEncoder.matches("user_new_password", localAuthenticationEntity.getAuthenticationKey())); } @Test @@ -373,17 +421,21 @@ public class TestUsers { Authentication auth = new UsernamePasswordAuthenticationToken("user", null); SecurityContextHolder.getContext().setAuthentication(auth); - users.createUser("user", "user"); - - UserEntity userEntity = userDAO.findUserByName("user"); + UserEntity userEntity = users.createUser("user", "user", null); + users.addLocalAuthentication(userEntity, "user"); - assertNotSame("user", userEntity.getUserPassword()); - assertTrue(passwordEncoder.matches("user", userEntity.getUserPassword())); + userEntity = userDAO.findUserByName("user"); + UserAuthenticationEntity foundLocalAuthenticationEntity; + foundLocalAuthenticationEntity = getLocalAuthenticationEntity(userEntity); + assertNotNull(foundLocalAuthenticationEntity); + assertNotSame("user", foundLocalAuthenticationEntity.getAuthenticationKey()); + assertTrue(passwordEncoder.matches("user", foundLocalAuthenticationEntity.getAuthenticationKey())); try { users.modifyPassword("user", "admin", "user_new_password"); Assert.fail("Exception should be thrown here as password is incorrect"); } catch (AmbariException ex) { + // This is expected } } @@ -392,18 +444,23 @@ public class TestUsers { Authentication auth = new UsernamePasswordAuthenticationToken("user2", null); SecurityContextHolder.getContext().setAuthentication(auth); - users.createUser("user", "user"); - users.createUser("user2", "user2"); + UserEntity userEntity; + userEntity = users.createUser("user", "user", null); + users.addLocalAuthentication(userEntity, "user"); - UserEntity userEntity = userDAO.findUserByName("user"); + userEntity = users.createUser("user2", "user2", null); + users.addLocalAuthentication(userEntity, "user2"); - assertNotSame("user", userEntity.getUserPassword()); - assertTrue(passwordEncoder.matches("user", userEntity.getUserPassword())); + UserAuthenticationEntity foundLocalAuthenticationEntity = getLocalAuthenticationEntity(userDAO.findUserByName("user")); + assertNotNull(foundLocalAuthenticationEntity); + assertNotSame("user", foundLocalAuthenticationEntity.getAuthenticationKey()); + assertTrue(passwordEncoder.matches("user", foundLocalAuthenticationEntity.getAuthenticationKey())); try { users.modifyPassword("user", "user2", "user_new_password"); Assert.fail("Exception should be thrown here as user2 can't change password of user"); - } catch (AmbariException ex) { + } catch (AuthorizationException ex) { + // This is expected } } @@ -411,9 +468,20 @@ public class TestUsers { @Ignore // TODO @Transactional annotation breaks this test public void testCreateUserDefaultParams() throws Exception { final Users spy = Mockito.spy(users); - spy.createUser("user", "user"); - Mockito.verify(spy).createUser("user", "user", UserType.LOCAL, true, false); + spy.createUser("user", "user", null); + Mockito.verify(spy).createUser("user", "user", null); } + private UserAuthenticationEntity getLocalAuthenticationEntity(UserEntity userEntity) { + assertNotNull(userEntity); + Collection<UserAuthenticationEntity> authenticationEntities = userEntity.getAuthenticationEntities(); + assertNotNull(authenticationEntities); + for (UserAuthenticationEntity authenticationEntity : authenticationEntities) { + if (authenticationEntity.getAuthenticationType() == UserAuthenticationType.LOCAL) { + return authenticationEntity; + } + } + return null; + } } http://git-wip-us.apache.org/repos/asf/ambari/blob/f76c87a6/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java index ac91c90..ffa68fa 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/UsersTest.java @@ -63,7 +63,7 @@ import junit.framework.Assert; public class UsersTest extends EasyMockSupport { - public static final String SERVICEOP_USER_NAME = "serviceopuser"; + private static final String SERVICEOP_USER_NAME = "serviceopuser"; private Injector injector; @Test @@ -76,7 +76,7 @@ public class UsersTest extends EasyMockSupport { expect(userEntity.getPrincipal()).andReturn(userPrincipalEntity).times(1); UserDAO userDAO = injector.getInstance(UserDAO.class); - expect(userDAO.findUserByNameAndType("user1", UserType.LOCAL)).andReturn(userEntity).times(1); + expect(userDAO.findUserByName("user1")).andReturn(userEntity).times(1); PrincipalEntity groupPrincipalEntity = createMock(PrincipalEntity.class); @@ -125,7 +125,7 @@ public class UsersTest extends EasyMockSupport { replayAll(); Users user = injector.getInstance(Users.class); - Collection<AmbariGrantedAuthority> authorities = user.getUserAuthorities("user1", UserType.LOCAL); + Collection<AmbariGrantedAuthority> authorities = user.getUserAuthorities("user1"); verifyAll(); @@ -151,7 +151,7 @@ public class UsersTest extends EasyMockSupport { public void testCreateUser_NoDuplicates() throws Exception { initForCreateUser(null); Users users = injector.getInstance(Users.class); - users.createUser(SERVICEOP_USER_NAME, "qwert"); + users.createUser(SERVICEOP_USER_NAME, SERVICEOP_USER_NAME, SERVICEOP_USER_NAME); } /** @@ -161,8 +161,7 @@ public class UsersTest extends EasyMockSupport { @Test(expected = AmbariException.class) public void testCreateUser_Duplicate() throws Exception { UserEntity existing = new UserEntity(); - existing.setUserName(UserName.fromString(SERVICEOP_USER_NAME)); - existing.setUserType(UserType.LDAP); + existing.setUserName(UserName.fromString(SERVICEOP_USER_NAME).toString()); existing.setUserId(1); existing.setMemberEntities(Collections.<MemberEntity>emptySet()); PrincipalEntity principal = new PrincipalEntity(); @@ -171,12 +170,12 @@ public class UsersTest extends EasyMockSupport { initForCreateUser(existing); Users users = injector.getInstance(Users.class); - users.createUser(SERVICEOP_USER_NAME, "qwert"); + users.createUser(SERVICEOP_USER_NAME, SERVICEOP_USER_NAME, SERVICEOP_USER_NAME); } private void initForCreateUser(@Nullable UserEntity existingUser) { UserDAO userDao = createStrictMock(UserDAO.class); - expect(userDao.findSingleUserByName(anyString())).andReturn(existingUser); + expect(userDao.findUserByName(anyString())).andReturn(existingUser); userDao.create(anyObject(UserEntity.class)); expectLastCall(); EntityManager entityManager = createNiceMock(EntityManager.class); http://git-wip-us.apache.org/repos/asf/ambari/blob/f76c87a6/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/jwt/JwtAuthenticationFilterTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/jwt/JwtAuthenticationFilterTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/jwt/JwtAuthenticationFilterTest.java index 24f5f88..47df030 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/jwt/JwtAuthenticationFilterTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/security/authorization/jwt/JwtAuthenticationFilterTest.java @@ -47,7 +47,6 @@ import javax.servlet.http.HttpServletResponse; import org.apache.ambari.server.security.authorization.AmbariGrantedAuthority; import org.apache.ambari.server.security.authorization.AuthorizationHelper; import org.apache.ambari.server.security.authorization.User; -import org.apache.ambari.server.security.authorization.UserType; import org.apache.ambari.server.security.authorization.Users; import org.junit.BeforeClass; import org.junit.Ignore; @@ -170,16 +169,15 @@ public class JwtAuthenticationFilterTest { withConstructor(properties, entryPoint, users).createNiceMock(); expect(filter.getJWTFromCookie(anyObject(HttpServletRequest.class))).andReturn(signedJWT.serialize()); - expect(users.getUser(eq("test-user"), eq(UserType.JWT))).andReturn(null).once(); - expect(users.getUser(eq("test-user"), eq(UserType.JWT))).andReturn(user).anyTimes(); + expect(users.getUser(eq("test-user"))).andReturn(null).once(); + expect(users.getUser(eq("test-user"))).andReturn(user).anyTimes(); - users.createUser(eq("test-user"), anyObject(String.class), eq(UserType.JWT), eq(true), eq(false)); + users.createUser(eq("test-user"), eq("test-user"), eq("test-user")); expectLastCall(); - expect(users.getUserAuthorities(eq("test-user"), eq(UserType.JWT))).andReturn(Collections.singletonList(authority)); + expect(users.getUserAuthorities(eq("test-user"))).andReturn(Collections.singletonList(authority)); expect(user.getUserName()).andReturn("test-user"); - expect(user.getUserType()).andReturn(UserType.JWT); expect(user.getUserId()).andReturn(1); http://git-wip-us.apache.org/repos/asf/ambari/blob/f76c87a6/ambari-server/src/test/java/org/apache/ambari/server/security/ldap/AmbariLdapDataPopulatorTest.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/security/ldap/AmbariLdapDataPopulatorTest.java b/ambari-server/src/test/java/org/apache/ambari/server/security/ldap/AmbariLdapDataPopulatorTest.java index 63b6927..cf05425 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/security/ldap/AmbariLdapDataPopulatorTest.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/security/ldap/AmbariLdapDataPopulatorTest.java @@ -53,12 +53,14 @@ import org.apache.ambari.server.orm.entities.GroupEntity; import org.apache.ambari.server.orm.entities.MemberEntity; import org.apache.ambari.server.orm.entities.PrincipalEntity; import org.apache.ambari.server.orm.entities.PrivilegeEntity; +import org.apache.ambari.server.orm.entities.UserAuthenticationEntity; import org.apache.ambari.server.orm.entities.UserEntity; import org.apache.ambari.server.security.authorization.AmbariLdapUtils; import org.apache.ambari.server.security.authorization.Group; import org.apache.ambari.server.security.authorization.GroupType; import org.apache.ambari.server.security.authorization.LdapServerProperties; import org.apache.ambari.server.security.authorization.User; +import org.apache.ambari.server.security.authorization.UserAuthenticationType; import org.apache.ambari.server.security.authorization.UserName; import org.apache.ambari.server.security.authorization.Users; import org.easymock.Capture; @@ -1971,14 +1973,15 @@ public class AmbariLdapDataPopulatorTest { private User createUser(String name, boolean ldapUser, GroupEntity group) { final UserEntity userEntity = new UserEntity(); userEntity.setUserId(userIdCounter++); - userEntity.setUserName(UserName.fromString(name)); + userEntity.setUserName(UserName.fromString(name).toString()); userEntity.setCreateTime(new Date()); - userEntity.setLdapUser(ldapUser); userEntity.setActive(true); userEntity.setMemberEntities(new HashSet<MemberEntity>()); + final PrincipalEntity principalEntity = new PrincipalEntity(); principalEntity.setPrivileges(new HashSet<PrivilegeEntity>()); userEntity.setPrincipal(principalEntity); + if (group != null) { final MemberEntity member = new MemberEntity(); member.setUser(userEntity); @@ -1986,6 +1989,18 @@ public class AmbariLdapDataPopulatorTest { group.getMemberEntities().add(member); userEntity.getMemberEntities().add(member); } + + UserAuthenticationEntity userAuthenticationEntity = new UserAuthenticationEntity(); + if(ldapUser) { + userAuthenticationEntity.setAuthenticationType(UserAuthenticationType.LDAP); + userAuthenticationEntity.setAuthenticationKey("some dn"); + } + else { + userAuthenticationEntity.setAuthenticationType(UserAuthenticationType.LOCAL); + userAuthenticationEntity.setAuthenticationKey("some password (normally encoded)"); + } + userEntity.setAuthenticationEntities(Collections.singletonList(userAuthenticationEntity)); + return new User(userEntity); } http://git-wip-us.apache.org/repos/asf/ambari/blob/f76c87a6/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog240Test.java ---------------------------------------------------------------------- diff --git a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog240Test.java b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog240Test.java index f106658..55a6436 100644 --- a/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog240Test.java +++ b/ambari-server/src/test/java/org/apache/ambari/server/upgrade/UpgradeCatalog240Test.java @@ -93,7 +93,6 @@ import org.apache.ambari.server.orm.entities.ViewInstanceEntity; import org.apache.ambari.server.orm.entities.WidgetEntity; import org.apache.ambari.server.security.authorization.ResourceType; import org.apache.ambari.server.security.authorization.User; -import org.apache.ambari.server.security.authorization.UserName; import org.apache.ambari.server.security.authorization.Users; import org.apache.ambari.server.stack.StackManagerFactory; import org.apache.ambari.server.state.AlertFirmness; @@ -2614,11 +2613,11 @@ public class UpgradeCatalog240Test { expect(requestScheduleDAO.findAll()).andReturn(Collections.singletonList(requestScheduleEntity)).once(); UserEntity userEntity = new UserEntity(); - userEntity.setUserName(UserName.fromString("createdUser")); + userEntity.setUserName("createdUser"); userEntity.setUserId(1); userEntity.setPrincipal(new PrincipalEntity()); User user = new User(userEntity); - expect(users.getUserIfUnique("createdUser")).andReturn(user).once(); + expect(users.getUser("createdUser")).andReturn(user).once(); expect(requestScheduleDAO.merge(requestScheduleEntity)).andReturn(requestScheduleEntity).once(); @@ -2658,7 +2657,7 @@ public class UpgradeCatalog240Test { expect(requestScheduleDAO.findAll()).andReturn(Collections.singletonList(requestScheduleEntity)).once(); - expect(users.getUserIfUnique("createdUser")).andReturn(null).once(); + expect(users.getUser("createdUser")).andReturn(null).once(); final Injector injector = Guice.createInjector(new AbstractModule() { @Override