public Collection<Role> getAssignedRoles( UserAssignment userAssignment ) throws RbacManagerException { return getAssignedRoles( userAssignment.getPrincipal() ); }
private void invalidateCachedUserAssignment( UserAssignment userAssignment ) { if ( userAssignment != null ) { userAssignmentsCache.remove( userAssignment.getPrincipal() ); userPermissionsCache.remove( userAssignment.getPrincipal() ); } }
public boolean userAssignmentExists( UserAssignment assignment ) { if ( assignment == null ) { return false; } return this.userAssignmentExists( assignment.getPrincipal() ); }
public boolean userAssignmentExists( String principal ) { try { for ( UserAssignment assignment : getAllUserAssignments() ) { if ( StringUtils.equals( assignment.getPrincipal(), principal ) ) { return true; } } } catch ( RbacManagerException e ) { return false; } return false; }
public void removeUserAssignment( UserAssignment userAssignment ) throws RbacObjectNotFoundException, RbacManagerException { RBACObjectAssertions.assertValid( "Remove User Assignment", userAssignment ); if ( userAssignment.isPermanent() ) { throw new RbacPermanentException( "Unable to delete permanent user assignment [" + userAssignment.getPrincipal() + "]" ); } fireRbacUserAssignmentRemoved( userAssignment ); assertUserAssignmentExists( userAssignment.getPrincipal() ); userAssignments.remove( userAssignment.getPrincipal() ); }
public boolean userAssignmentExists( UserAssignment assignment ) { if ( userAssignmentsCache.hasKey( assignment.getPrincipal() ) ) { return true; } return this.rbacImpl.userAssignmentExists( assignment ); }
public void removeUserAssignment( UserAssignment userAssignment ) throws RbacManagerException { if ( userAssignment != null ) { userAssignmentsCache.remove( userAssignment.getPrincipal() ); } // TODO ldap cannot or isWritable ldap ? this.rbacImpl.removeUserAssignment( userAssignment ); }
public UserAssignment saveUserAssignment( UserAssignment userAssignment ) throws RbacManagerException { triggerInit(); RBACObjectAssertions.assertValid( "Save UserAssignment", userAssignment ); fireRbacUserAssignmentSaved( userAssignment ); userAssignments.put( userAssignment.getPrincipal(), userAssignment ); return userAssignment; }
for ( UserAssignment ua : userAssignments ) UserAssignment userAssignment = allUserAssignments.get( ua.getPrincipal() ); if ( userAssignment != null ) allUserAssignments.put( ua.getPrincipal(), ua );
for ( UserAssignment ua : userAssignments ) UserAssignment userAssignment = allUserAssignments.get( ua.getPrincipal() ); if ( userAssignment != null ) allUserAssignments.put( ua.getPrincipal(), ua );
@Override public void removeUserAssignment( UserAssignment userAssignment ) throws RbacObjectNotFoundException, RbacObjectInvalidException, RbacManagerException { boolean allFailed = true; Exception lastException = null; for ( RBACManager rbacManager : rbacManagersPerId.values() ) { try { rbacManager.removeUserAssignment( userAssignment ); userAssignmentsCache.remove( userAssignment.getPrincipal() ); allFailed = false; } catch ( Exception e ) { lastException = e; } } if ( lastException != null && allFailed ) { throw new RbacManagerException( lastException.getMessage(), lastException ); } }
@Override public void removeUserAssignment( UserAssignment userAssignment ) throws RbacObjectNotFoundException, RbacObjectInvalidException, RbacManagerException { boolean allFailed = true; Exception lastException = null; for ( RBACManager rbacManager : rbacManagersPerId.values() ) { try { rbacManager.removeUserAssignment( userAssignment ); userAssignmentsCache.remove( userAssignment.getPrincipal() ); allFailed = false; } catch ( Exception e ) { lastException = e; } } if ( lastException != null && allFailed ) { throw new RbacManagerException( lastException.getMessage(), lastException ); } }
User admin = userManager.findUser( userAssignment.getPrincipal() ); log.warn( "Dangling UserAssignment -> {}", userAssignment.getPrincipal() ); log.warn( "fail to find user {} for admin unlock check: {}", userAssignment.getPrincipal(), e.getMessage() );
User admin = userManager.findUser( userAssignment.getPrincipal() ); log.warn( "Dangling UserAssignment -> {}", userAssignment.getPrincipal() ); log.warn( "fail to find user {} for admin unlock check: {}", userAssignment.getPrincipal(), e.getMessage() );
try if ( !userManager.userExists( userAssignment.getPrincipal() ) ) User user = userManager.createUser( userAssignment.getPrincipal(), null, null ); userManager.addUser( user ); ldapRoleMapper.getRoles( userAssignment.getPrincipal(), context, getRealRoles() ); allRoles.add( role ); ldapRoleMapper.saveUserRole( role, userAssignment.getPrincipal(), context ); currentUserRoles.add( role ); ldapRoleMapper.removeUserRole( role, userAssignment.getPrincipal(), context ); userAssignmentsCache.put( userAssignment.getPrincipal(), userAssignment ); return userAssignment;
if ( StringUtils.isEmpty( assignment.getPrincipal() ) )
userAssignmentsCache.put( userAssignment.getPrincipal(), userAssignment );
assertEquals( "should be only one role assigned", 1, manager.getAssignedRoles( assignment.getPrincipal() ) .size() ); assertEquals( "should be one role left to assign", 1, manager.getUnassignedRoles( assignment.getPrincipal() ) .size() ); assertEquals( 2, manager.getAllRoles().size() ); String bobId = assignment.getPrincipal(); assertEquals( "should be only one role assigned", 1, manager.getAssignedRoles( assignment.getPrincipal() ) .size() ); assertEquals( "should be one role left to assign", 1, manager.getUnassignedRoles( assignment.getPrincipal() ) .size() ); assertEquals( 2, manager.getAllRoles().size() ); String janetId = assignment.getPrincipal(); assertNotNull( uaJanet ); assertEquals( "bob", uaBob.getPrincipal() ); assertEquals( "janet", uaJanet.getPrincipal() );
manager.getAssignedRoles( assignment.getPrincipal() ).size() ); assertEquals( "should be one role left to assign", 1, manager.getUnassignedRoles( assignment.getPrincipal() ).size() ); assertEquals( 2, manager.getAllRoles().size() );
assertEquals( 2, manager.getAllRoles().size() ); assertEquals( 2, bob.getRoleNames().size() ); assertEquals( 0, manager.getUnassignedRoles( bob.getPrincipal() ).size() ); assertEquals( "Should only have 1 role under bob now.", 1, bob.getRoleNames().size() ); assertEquals( "Should have 2 total roles still.", 2, manager.getAllRoles().size() ); assertEquals( "Should have 1 assignable role", 1, manager.getUnassignedRoles( bob.getPrincipal() ).size() ); bob.setRoleNames( roles ); bob = manager.saveUserAssignment( bob ); assertEquals( "Should have 2 assignable roles.", 2, manager.getUnassignedRoles( bob.getPrincipal() ).size() );