use of org.opencastproject.security.api.User in project opencast by opencast.
the class UserAndRoleDirectoryServiceImplTest method setUp.
@Before
public void setUp() throws Exception {
org = new DefaultOrganization();
userName = "sampleUser";
role1 = new JaxbRole("role1", org);
role2 = new JaxbRole("role2", org);
role3 = new JaxbRole("role3", org);
JaxbUser user1 = new JaxbUser(userName, "matterhorn", org, role1, role2);
user1.setManageable(true);
User user2 = new JaxbUser(userName, "secret", "test", true, org, role2, role3);
User user3 = new JaxbUser("userSample", "test", org, role2, role3);
List<User> users = new ArrayList<User>();
users.add(user1);
UserProvider provider1 = EasyMock.createNiceMock(UserProvider.class);
EasyMock.expect(provider1.getOrganization()).andReturn(org.getId()).anyTimes();
EasyMock.expect(provider1.loadUser((String) EasyMock.anyObject())).andReturn(user1).anyTimes();
EasyMock.expect(provider1.findUsers("%mple%", 0, 0)).andReturn(users.iterator()).once();
EasyMock.expect(provider1.findUsers("%mple%", 0, 0)).andReturn(users.iterator()).once();
EasyMock.expect(provider1.getUsers()).andReturn(users.iterator()).once();
EasyMock.expect(provider1.getName()).andReturn("test").once();
List<User> users2 = new ArrayList<User>();
users2.add(user3);
UserProvider provider2 = EasyMock.createNiceMock(UserProvider.class);
EasyMock.expect(provider2.getOrganization()).andReturn(org.getId()).anyTimes();
EasyMock.expect(provider2.loadUser((String) EasyMock.anyObject())).andReturn(user2).anyTimes();
EasyMock.expect(provider2.findUsers("%mple%", 0, 0)).andReturn(users2.iterator()).once();
EasyMock.expect(provider2.findUsers("%mple%", 0, 0)).andReturn(users2.iterator()).once();
EasyMock.expect(provider2.getUsers()).andReturn(users2.iterator()).once();
EasyMock.expect(provider2.getName()).andReturn("matterhorn").once();
List<Role> roles1 = new ArrayList<Role>();
roles1.add(new JaxbRole("ROLE_ASTRO_2011", org));
roles1.add(new JaxbRole("ROLE_ASTRO_2012", org));
List<Role> rolesForUser1 = new ArrayList<Role>();
rolesForUser1.add(new JaxbRole("ROLE_ASTRO_2012", org));
List<Role> findRoles1 = new ArrayList<Role>();
findRoles1.add(new JaxbRole("ROLE_ASTRO_2012", org));
RoleProvider roleProvider1 = EasyMock.createNiceMock(RoleProvider.class);
EasyMock.expect(roleProvider1.getOrganization()).andReturn(org.getId()).anyTimes();
EasyMock.expect(roleProvider1.getRoles()).andReturn(roles1.iterator()).anyTimes();
EasyMock.expect(roleProvider1.getRolesForUser((String) EasyMock.anyObject())).andReturn(rolesForUser1).anyTimes();
EasyMock.expect(roleProvider1.findRoles("%2012%", Role.Target.ALL, 0, 0)).andReturn(findRoles1.iterator()).once();
EasyMock.expect(roleProvider1.findRoles("%2012%", Role.Target.ALL, 0, 0)).andReturn(findRoles1.iterator()).once();
List<Role> roles2 = new ArrayList<Role>();
roles2.add(new JaxbRole("ROLE_MATH_2011", org));
roles2.add(new JaxbRole("ROLE_MATH_2012", org));
List<Role> rolesForUser2 = new ArrayList<Role>();
rolesForUser2.add(new JaxbRole("ROLE_MATH_2012", org));
List<Role> findRoles2 = new ArrayList<Role>();
findRoles2.add(new JaxbRole("ROLE_MATH_2012", org));
RoleProvider roleProvider2 = EasyMock.createNiceMock(RoleProvider.class);
EasyMock.expect(roleProvider2.getOrganization()).andReturn(org.getId()).anyTimes();
EasyMock.expect(roleProvider2.getRoles()).andReturn(roles2.iterator()).anyTimes();
EasyMock.expect(roleProvider2.getRolesForUser((String) EasyMock.anyObject())).andReturn(rolesForUser2).anyTimes();
EasyMock.expect(roleProvider2.findRoles("%2012%", Role.Target.ALL, 0, 0)).andReturn(findRoles2.iterator()).once();
EasyMock.expect(roleProvider2.findRoles("%2012%", Role.Target.ALL, 0, 0)).andReturn(findRoles2.iterator()).once();
RoleProvider otherOrgRoleProvider = EasyMock.createNiceMock(RoleProvider.class);
EasyMock.expect(otherOrgRoleProvider.getOrganization()).andReturn("otherOrg").anyTimes();
EasyMock.expect(otherOrgRoleProvider.getRoles()).andReturn(roles2.iterator()).anyTimes();
EasyMock.expect(otherOrgRoleProvider.getRolesForUser((String) EasyMock.anyObject())).andReturn(rolesForUser2).anyTimes();
EasyMock.expect(otherOrgRoleProvider.findRoles("%2012%", Role.Target.ALL, 0, 0)).andReturn(new ArrayList<Role>().iterator()).anyTimes();
SecurityService securityService = EasyMock.createNiceMock(SecurityService.class);
EasyMock.expect(securityService.getOrganization()).andReturn(org).anyTimes();
EasyMock.replay(provider1, provider2, roleProvider1, roleProvider2, otherOrgRoleProvider, securityService);
directory = new UserAndRoleDirectoryServiceImpl();
directory.activate(null);
directory.setSecurityService(securityService);
directory.addUserProvider(provider1);
directory.addUserProvider(provider2);
directory.addRoleProvider(roleProvider1);
directory.addRoleProvider(roleProvider2);
directory.addRoleProvider(otherOrgRoleProvider);
}
use of org.opencastproject.security.api.User in project opencast by opencast.
the class JpaUserProviderTest method testUpdateUser.
@Test
public void testUpdateUser() throws Exception {
Set<JpaRole> authorities = new HashSet<JpaRole>();
authorities.add(new JpaRole("ROLE_ASTRO_101_SPRING_2011_STUDENT", org1));
JpaUser user = new JpaUser("user1", "pass1", org1, provider.getName(), true, authorities);
provider.addUser(user);
User loadUser = provider.loadUser("user1");
assertNotNull(loadUser);
authorities.add(new JpaRole("ROLE_ASTRO_101_SPRING_2013_STUDENT", org1));
String newPassword = "newPassword";
JpaUser updateUser = new JpaUser(user.getUsername(), newPassword, org1, provider.getName(), true, authorities);
User loadUpdatedUser = provider.updateUser(updateUser);
// User loadUpdatedUser = provider.loadUser(user.getUsername());
assertNotNull(loadUpdatedUser);
assertEquals(user.getUsername(), loadUpdatedUser.getUsername());
assertEquals(PasswordEncoder.encode(newPassword, user.getUsername()), loadUpdatedUser.getPassword());
assertEquals(authorities.size(), loadUpdatedUser.getRoles().size());
updateUser = new JpaUser("unknown", newPassword, org1, provider.getName(), true, authorities);
try {
provider.updateUser(updateUser);
fail("Should throw a NotFoundException");
} catch (NotFoundException e) {
assertTrue("User not found.", true);
}
}
use of org.opencastproject.security.api.User in project opencast by opencast.
the class JpaUserProviderTest method testAddUserWithOrgAdminRoleAsOrgAdmin.
@Test
public void testAddUserWithOrgAdminRoleAsOrgAdmin() throws Exception {
provider.setSecurityService(mockSecurityServiceWithUser(createUserWithRoles(org1, "org_admin", org1.getAdminRole())));
JpaUser newUser = createUserWithRoles(org1, "org_admin2", org1.getAdminRole());
provider.addUser(newUser);
User loadedUser = provider.loadUser(newUser.getUsername());
assertNotNull("The currently added user isn't loaded as expected", loadedUser);
assertEquals(newUser.getUsername(), loadedUser.getUsername());
assertEquals(newUser.getRoles(), loadedUser.getRoles());
}
use of org.opencastproject.security.api.User in project opencast by opencast.
the class JpaUserProviderTest method testAddAndGetUser.
@Test
public void testAddAndGetUser() throws Exception {
JpaUser user = createUserWithRoles(org1, "user1", "ROLE_ASTRO_101_SPRING_2011_STUDENT");
provider.addUser(user);
User loadUser = provider.loadUser("user1");
assertNotNull(loadUser);
assertEquals(user.getUsername(), loadUser.getUsername());
assertEquals(PasswordEncoder.encode(user.getPassword(), user.getUsername()), loadUser.getPassword());
assertEquals(user.getOrganization(), loadUser.getOrganization());
assertEquals(user.getRoles(), loadUser.getRoles());
assertNull("Loading 'does not exist' should return null", provider.loadUser("does not exist"));
assertNull("Loading 'does not exist' should return null", provider.loadUser("user1", org2.getId()));
loadUser = provider.loadUser("user1", org1.getId());
assertNotNull(loadUser);
assertEquals(user.getUsername(), loadUser.getUsername());
assertEquals(PasswordEncoder.encode(user.getPassword(), user.getUsername()), loadUser.getPassword());
assertEquals(user.getOrganization(), loadUser.getOrganization());
assertEquals(user.getRoles(), loadUser.getRoles());
}
use of org.opencastproject.security.api.User in project opencast by opencast.
the class AssetManagerWithSecurity method isAuthorizedByAcl.
private boolean isAuthorizedByAcl(AccessControlList acl, String action) {
final User user = secSvc.getUser();
final Organization org = secSvc.getOrganization();
return AccessControlUtil.isAuthorized(acl, user, org, action);
}
Aggregations