mirror of
https://github.com/eclipse-sailing-analytics/sailing-analytics.git
synced 2026-11-07 19:42:17 +00:00
1 parent
b5715fafbf
commit
f3ddf9db8f
1 file changed
+28
@@ -8,10 +8,17 @@ import static org.junit.Assert.assertSame;
|
||||
import static org.junit.Assert.assertTrue;
|
||||
|
||||
import java.net.UnknownHostException;
|
||||
import java.util.Arrays;
|
||||
import java.util.Collections;
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
import java.util.UUID;
|
||||
|
||||
import org.apache.shiro.SecurityUtils;
|
||||
import org.hamcrest.Matchers;
|
||||
import org.junit.Assert;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
|
||||
@@ -30,6 +37,8 @@ import com.sap.sse.security.shared.RoleDefinition;
|
||||
import com.sap.sse.security.shared.UserGroupManagementException;
|
||||
import com.sap.sse.security.shared.UserManagementException;
|
||||
import com.sap.sse.security.shared.WildcardPermission;
|
||||
import com.sap.sse.security.shared.impl.AccessControlList;
|
||||
import com.sap.sse.security.shared.impl.QualifiedObjectIdentifierImpl;
|
||||
import com.sap.sse.security.shared.impl.Role;
|
||||
import com.sap.sse.security.shared.impl.User;
|
||||
import com.sap.sse.security.shared.impl.UserGroup;
|
||||
@@ -84,6 +93,25 @@ public class LoginTest {
|
||||
assertFalse(Util.contains(specialUserGroup2.getUsers(), user));
|
||||
}
|
||||
|
||||
|
||||
@Test
|
||||
public void testAclAnonUserGroup() throws UserManagementException, MailException, UserGroupManagementException {
|
||||
final String username = "TheNewUser";
|
||||
securityService.createSimpleUser(username, "u@a.b", "Humba", username, /* company */ null,
|
||||
/* locale */ null, /* validationBaseURL */ null, /* owning group */ null);
|
||||
final UserGroup defaultUserGroup = securityService.getUserGroupByName(username + SecurityService.TENANT_SUFFIX);
|
||||
Map<UserGroup, Set<String>> permissionMap = new HashMap<>();
|
||||
permissionMap.put(defaultUserGroup, new HashSet<>(Arrays.asList(new String[] { "!READ", "UPDATE" })));
|
||||
permissionMap.put(null, new HashSet<>(Arrays.asList(new String[] { "!READ", "UPDATE" })));
|
||||
AccessControlList acl = securityService.updateAccessControlList(
|
||||
QualifiedObjectIdentifierImpl.fromDBWithoutEscaping("someid/more"), permissionMap);
|
||||
|
||||
Map<UserGroup, Set<String>> result = acl.getActionsByUserGroup();
|
||||
|
||||
Assert.assertThat(result.get(defaultUserGroup), Matchers.contains("!READ", "UPDATE"));
|
||||
Assert.assertThat(result.get(null), Matchers.contains("UPDATE"));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testGetUser() {
|
||||
assertNotNull("Subject should not be null: ", SecurityUtils.getSubject());
|
||||
|
||||
Reference in new issue
Block a user