@Override public User delegate(UserManager um) { return um.getAnonymousUser(); } });
public static User getAnonymousUser() { return getSecuritySupport().getUserManager(Realm.REALM_SYSTEM.getName()).getAnonymousUser(); }
/** * Retrieves permissions for current user. */ static List<Permission> getPermissions(Subject subject, String name) { if (subject == null) { // FIXME: this needs to be cached if we really run anonymous w/o session log.warn("no session == running as anonymous"); SecuritySupport secSupport = SecuritySupport.Factory.getInstance(); Collection<String> roles = secSupport.getUserManager().getAnonymousUser().getAllRoles(); RoleManager roleMan = secSupport.getRoleManager(); List<Permission> permissions = new ArrayList<Permission>(); for (String role : roles) { for (ACL acl : roleMan.getACLs(role).values()) { if (name.equals(acl.getName())) { // merge URI permissions from all roles permissions.addAll(acl.getList()); } } } return permissions; } ACL acl = PrincipalUtil.findAccessControlList(subject, name); return acl != null ? acl.getList() : null; }
when(anonymousUser.getAllRoles()).thenReturn(Arrays.asList("anonymous")); userManager = mock(UserManager.class); when(userManager.getAnonymousUser()).thenReturn(anonymousUser); roleManager = mock(RoleManager.class); when(roleManager.getACLs("anonymous")).thenReturn(new HashMap<String, ACL>());
@Test public void userManagerReturnsCorrectAnonymousUser() throws Exception { //WHEN User user = securitySupport.getUserManager().getAnonymousUser(); //THEN assertThat(user.getName(), is(UserManager.ANONYMOUS_USER)); assertThat(SecurityUtil.matchBCrypted("", user.getPassword()), is(true)); }
private void executeImpl() throws Exception { SecuritySupport securitySupport = Components.getComponent( SecuritySupport.class ); UserManager userManager = securitySupport.getUserManager(); User mgnlUser = null; if( user != null ) { mgnlUser = userManager.getUser( user ); } else { mgnlUser = userManager.getAnonymousUser(); } if( mgnlUser == null ) { throw new TaskExecutionException( error_missing_user.format( user != null ? user : "anonymous" ) ); } RoleManager roleManager = securitySupport.getRoleManager(); if( roleManager.getRole( role ) == null ) { throw new TaskExecutionException( error_missing_role.format( role ) ); } userManager.addRole( mgnlUser, role ); }
expect(userManager.getAnonymousUser()).andReturn(anonymousUser); expect(securitySupport.getRoleManager()).andReturn(roleManager); expect(anonymousUser.getAllRoles()).andReturn(new ArrayList<String>());