use of com.enonic.xp.security.CreateGroupParams in project xp by enonic.
the class SecurityServiceImplTest method testGetUserMemberships.
@Test
public void testGetUserMemberships() throws Exception {
runAsAdmin(() -> {
final PrincipalKey userKey = PrincipalKey.ofUser(SYSTEM, "User1");
final CreateUserParams createUser = CreateUserParams.create().userKey(userKey).displayName("User 1").email("user1@enonic.com").login("User1").password("123456").build();
final PrincipalKey groupKey1 = PrincipalKey.ofGroup(SYSTEM, "Group-a");
final CreateGroupParams createGroup1 = CreateGroupParams.create().groupKey(groupKey1).displayName("Group A").build();
final PrincipalKey groupKey2 = PrincipalKey.ofGroup(SYSTEM, "group-b");
final CreateGroupParams createGroup2 = CreateGroupParams.create().groupKey(groupKey2).displayName("Group B").build();
securityService.createUser(createUser);
securityService.createGroup(createGroup1);
securityService.createGroup(createGroup2);
securityService.addRelationship(PrincipalRelationship.from(groupKey1).to(userKey));
securityService.addRelationship(PrincipalRelationship.from(groupKey2).to(userKey));
refresh();
final PrincipalKeys memberships = securityService.getMemberships(userKey);
assertTrue(memberships.contains(groupKey1));
assertTrue(memberships.contains(groupKey2));
assertEquals(2, memberships.getSize());
});
}
use of com.enonic.xp.security.CreateGroupParams in project xp by enonic.
the class SecurityServiceImplTest method testUpdateGroup.
@Test
public void testUpdateGroup() throws Exception {
runAsAdmin(() -> {
final CreateGroupParams createGroup = CreateGroupParams.create().groupKey(PrincipalKey.ofGroup(SYSTEM, "Group-a")).displayName("Group A").build();
final Group group = securityService.createGroup(createGroup);
refresh();
final UpdateGroupParams groupUpdate = UpdateGroupParams.create(group).displayName("___Group B___").description("description").build();
final Group updatedGroupResult = securityService.updateGroup(groupUpdate);
refresh();
final Group updatedGroup = securityService.getGroup(group.getKey()).get();
assertEquals("___Group B___", updatedGroupResult.getDisplayName());
assertEquals("___Group B___", updatedGroup.getDisplayName());
assertEquals("description", updatedGroupResult.getDescription());
assertEquals("description", updatedGroup.getDescription());
});
}
use of com.enonic.xp.security.CreateGroupParams in project xp by enonic.
the class SecurityServiceImplTest method testGetAllMemberships.
@Test
public void testGetAllMemberships() throws Exception {
runAsAdmin(() -> {
final PrincipalKey userKey = PrincipalKey.ofUser(SYSTEM, "user1");
final CreateUserParams createUser = CreateUserParams.create().userKey(userKey).displayName("User 1").email("user1@enonic.com").login("user1").password("123456").build();
final PrincipalKey groupKey1 = PrincipalKey.ofGroup(SYSTEM, "group-a");
final CreateGroupParams createGroup1 = CreateGroupParams.create().groupKey(groupKey1).displayName("Group A").build();
final PrincipalKey groupKey2 = PrincipalKey.ofGroup(SYSTEM, "group-b");
final CreateGroupParams createGroup2 = CreateGroupParams.create().groupKey(groupKey2).displayName("Group B").build();
final PrincipalKey roleKey1 = PrincipalKey.ofRole("role-a");
final CreateRoleParams createRole = CreateRoleParams.create().roleKey(roleKey1).displayName("Role A").description("Group A Description").build();
securityService.createUser(createUser);
securityService.createGroup(createGroup1);
securityService.createGroup(createGroup2);
securityService.createRole(createRole);
securityService.addRelationship(PrincipalRelationship.from(groupKey1).to(userKey));
securityService.addRelationship(PrincipalRelationship.from(groupKey2).to(groupKey1));
securityService.addRelationship(PrincipalRelationship.from(roleKey1).to(groupKey2));
refresh();
final PrincipalKeys memberships = securityService.getAllMemberships(userKey);
assertTrue(memberships.contains(groupKey1));
assertTrue(memberships.contains(groupKey2));
assertTrue(memberships.contains(roleKey1));
assertEquals(3, memberships.getSize());
});
}
use of com.enonic.xp.security.CreateGroupParams in project xp by enonic.
the class SecurityServiceImplTest method testCreateGroup.
@Test
public void testCreateGroup() throws Exception {
runAsAdmin(() -> {
final PrincipalKey groupKey1 = PrincipalKey.ofGroup(SYSTEM, "Group-a");
final CreateGroupParams createGroup = CreateGroupParams.create().groupKey(groupKey1).displayName("Group A").description("Group A Description").build();
final PrincipalKey groupKey2 = PrincipalKey.ofGroup(SYSTEM, "group-b");
final CreateGroupParams createGroup2 = CreateGroupParams.create().groupKey(groupKey2).displayName("Group B").build();
final Group group1 = securityService.createGroup(createGroup);
final Group group2 = securityService.createGroup(createGroup2);
refresh();
final Group createdGroup1 = securityService.getGroup(groupKey1).get();
final Group createdGroup2 = securityService.getGroup(groupKey2).get();
assertEquals("Group A", group1.getDisplayName());
assertEquals("Group A", createdGroup1.getDisplayName());
assertEquals("Group A Description", group1.getDescription());
assertEquals("Group A Description", createdGroup1.getDescription());
assertEquals("Group B", group2.getDisplayName());
assertEquals("Group B", createdGroup2.getDisplayName());
assertNull(group2.getDescription());
assertNull(createdGroup2.getDescription());
});
}
use of com.enonic.xp.security.CreateGroupParams in project xp by enonic.
the class SecurityServiceImplTest method testRemoveRelationship.
@Test
public void testRemoveRelationship() throws Exception {
runAsAdmin(() -> {
// set up
final PrincipalKey userKey1 = PrincipalKey.ofUser(SYSTEM, "User1");
final CreateUserParams createUser1 = CreateUserParams.create().userKey(userKey1).displayName("User 1").email("user1@enonic.com").login("User1").password("123456").build();
final PrincipalKey userKey2 = PrincipalKey.ofUser(SYSTEM, "user2");
final CreateUserParams createUser2 = CreateUserParams.create().userKey(userKey2).displayName("User 2").email("user2@enonic.com").login("user2").build();
final PrincipalKey groupKey1 = PrincipalKey.ofGroup(SYSTEM, "Group-a");
final CreateGroupParams createGroup = CreateGroupParams.create().groupKey(groupKey1).displayName("Group A").build();
securityService.createUser(createUser1);
securityService.createUser(createUser2);
securityService.createGroup(createGroup);
refresh();
PrincipalRelationship membership = PrincipalRelationship.from(groupKey1).to(userKey1);
PrincipalRelationship membership2 = PrincipalRelationship.from(groupKey1).to(userKey2);
securityService.addRelationship(membership);
securityService.addRelationship(membership2);
refresh();
// exercise
securityService.removeRelationship(membership);
refresh();
// verify
final PrincipalRelationships relationships = securityService.getRelationships(groupKey1);
assertEquals(1, relationships.getSize());
assertEquals(membership2, relationships.get(0));
});
}
Aggregations