public Role getRole( String roleName ) throws RbacObjectNotFoundException, RbacManagerException { Role el = rolesCache.get( roleName ); if ( el != null ) { return el; } else { Role role = this.rbacImpl.getRole( roleName ); rolesCache.put( roleName, role ); return role; } }
Role role = rbacManager.getRole( roleName ); if ( role != null )
private Role buildRole( String group ) throws RbacManagerException { Role role = null; try { role = this.rbacImpl.getRole( group ); } catch ( RbacObjectNotFoundException e ) { // if it's mapped role to a group it doesn't exist in jdo } role = ( role == null ) ? new RoleImpl( group ) : role; if ( role != null ) { rolesCache.put( role.getName(), role ); } return role; }
Role role = rbacManager.getRole( roleName ); if ( role != null )
@Test public void testPerformanceRoles() throws RbacManagerException { rbacDefaults.createDefaults(); String roleIdSysAdmin = "System Administrator"; String roleIdUserAdmin = "User Administrator"; long startTime = System.currentTimeMillis(); for ( int i = 0; i <= ITERATIONS; i++ ) { Role roleSysAdmin = rbacManager.getRole( roleIdSysAdmin ); Role roleUserAdmin = rbacManager.getRole( roleIdUserAdmin ); assertNotNull( roleSysAdmin ); assertNotNull( roleUserAdmin ); assertEquals( roleIdSysAdmin, roleSysAdmin.getName() ); assertEquals( roleIdUserAdmin, roleUserAdmin.getName() ); } long endTime = System.currentTimeMillis(); assertPerformance( "Roles", startTime, endTime, ITERATIONS, 130 ); }
public Collection<Role> getAssignedRoles( String username ) throws RbacManagerException { LdapConnection ldapConnection = null; DirContext context = null; try { ldapConnection = ldapConnectionFactory.getConnection(); context = ldapConnection.getDirContext(); List<String> roleNames = ldapRoleMapper.getRoles( username, context, getRealRoles() ); if ( roleNames.isEmpty() ) { return Collections.emptyList(); } List<Role> roles = new ArrayList<Role>( roleNames.size() ); for ( String name : roleNames ) { roles.add( this.rbacImpl.getRole( name ) );// new RoleImpl( name ) ); } return roles; } catch ( MappingException e ) { throw new RbacManagerException( e.getMessage(), e ); } catch ( LdapException e ) { throw new RbacManagerException( e.getMessage(), e ); } }
public Role getChildRole( RBACManager manager, Role role, String expectedChildRoleName, int childRoleCount ) throws RbacManagerException { assertTrue( role.hasChildRoles() ); List<String> childNames = role.getChildRoleNames(); assertNotNull( childNames ); assertEquals( 1, childNames.size() ); String childName = (String) childNames.get( 0 ); assertNotNull( childName ); Role childRole = manager.getRole( childName ); assertNotNull( childRole ); assertEquals( expectedChildRoleName, childRole.getName() ); return childRole; }
public Boolean updateRoleDescription( String roleName, String description ) throws RedbackServiceException { try { org.apache.archiva.redback.rbac.Role rbacRole = rbacManager.getRole( roleName ); rbacRole.setDescription( description ); rbacManager.saveRole( rbacRole ); } catch ( RbacManagerException e ) { throw new RedbackServiceException( new ErrorMessage( e.getMessage() ) ); } return Boolean.TRUE; }
unassignedRoles.add( rbacImpl.getRole( roleName ) );
@Test public void testAddGetChildRole() throws RbacManagerException { if ( !supportChildRole() ) { log.info( "child role feature not supported by the RBACManager impl: {}", rbacManager.getClass().getName() ); return; } RBACManager manager = rbacManager; assertNotNull( manager ); rbacManager.eraseDatabase(); eventTracker.rbacInit( true ); Role adminRole = manager.saveRole( getAdminRole() ); Role develRole = manager.saveRole( getDeveloperRole() ); assertEquals( 2, manager.getAllRoles().size() ); Role actualAdmin = manager.getRole( adminRole.getName() ); Role actualDevel = manager.getRole( develRole.getName() ); assertEquals( adminRole.getName(), actualAdmin.getName() ); assertEquals( adminRole.getChildRoleNames(), actualAdmin.getChildRoleNames() ); assertEquals( develRole, actualDevel ); // Now add a child role. manager.addChildRole( develRole, getProjectAdminRole() ); manager.saveRole( develRole ); assertEquals( 3, manager.getAllRoles().size() ); /* Assert some event tracker stuff */ assertEventTracker( 3, 0, 3, 0, true, true ); }
/** * remove the role corresponding to the role using the resource passed in for resolving the * ${resource} expression */ public void removeTemplatedRole( String templateId, String resource ) throws RoleManagerException { ModelTemplate template = RoleModelUtils.getModelTemplate( blessedModel, templateId ); String roleName = template.getNamePrefix() + template.getDelimiter() + resource; try { Role role = rbacManager.getRole( roleName ); for ( UserAssignment assignment : rbacManager.getUserAssignmentsForRoles( Arrays.asList( role.getName() ) ) ) { assignment.removeRoleName( role ); rbacManager.saveUserAssignment( assignment ); } } catch ( RbacManagerException e ) { throw new RoleManagerException( "unable to remove role", e ); } templateProcessor.remove( blessedModel, templateId, resource ); }
@Test public void testAddGetRole() throws RbacManagerException { assertNotNull( rbacManager ); rbacManager.eraseDatabase(); eventTracker.rbacInit( true ); Role adminRole = rbacManager.saveRole( getAdminRole() ); Role develRole = rbacManager.saveRole( getDeveloperRole() ); assertEquals( 2, rbacManager.getAllRoles().size() ); Role actualAdmin = rbacManager.getRole( adminRole.getName() ); Role actualDevel = rbacManager.getRole( develRole.getName() ); assertEquals( adminRole.getName(), actualAdmin.getName() ); assertEquals( adminRole.getChildRoleNames(), actualAdmin.getChildRoleNames() ); assertEquals( develRole, actualDevel ); /* Assert some event tracker stuff */ assertEventTracker( 2, 0, 2, 0, true, true ); }
@Test public void testGetRolesDeep() throws RbacManagerException { rbacManager.eraseDatabase(); rbacDefaults.createDefaults(); // Setup User / Assignment with 1 role. String username = "bob"; UserAssignment assignment = rbacManager.createUserAssignment( username ); assignment.addRoleName( "Developer" ); rbacManager.saveUserAssignment( assignment ); assertEquals( incAssignements( 1 ), rbacManager.getAllUserAssignments().size() ); assertEquals( 4, rbacManager.getAllRoles().size() ); assertEquals( 6, rbacManager.getAllPermissions().size() ); // Get the List of Assigned Roles for user bob. Role devel = rbacManager.getRole( "Developer" ); assertNotNull( devel ); // First Depth. Role trusted = getChildRole( rbacManager, devel, "Trusted Developer", 1 ); // Second Depth. Role sysAdmin = getChildRole( rbacManager, trusted, "System Administrator", 1 ); // Third Depth. getChildRole( rbacManager, sysAdmin, "User Administrator", 1 ); }
@Test public void testUserAssignmentAddRole() throws RbacManagerException { RBACManager manager = rbacManager; rbacManager.eraseDatabase(); eventTracker.rbacInit( true ); Role adminRole = manager.saveRole( getAdminRole() ); assertEquals( 1, manager.getAllRoles().size() ); String adminPrincipal = "admin"; UserAssignment assignment = manager.createUserAssignment( adminPrincipal ); assignment.addRoleName( adminRole ); manager.saveUserAssignment( assignment ); assertEquals( 1, manager.getAllUserAssignments().size() ); assertEquals( 1, manager.getAllRoles().size() ); UserAssignment ua = manager.getUserAssignment( adminPrincipal ); assertNotNull( ua ); Role fetched = manager.getRole( "ADMIN" ); assertNotNull( fetched ); /* Assert some event tracker stuff */ assertEventTracker( 1, 0, 1, 0, true, true ); }
@Test public void testAllowRoleWithoutPermissions() throws RbacManagerException { assertNotNull( rbacManager ); rbacManager.eraseDatabase(); eventTracker.rbacInit( true ); String rolename = "Test Role"; Role testRole = rbacManager.createRole( rolename ); testRole = rbacManager.saveRole( testRole ); assertNotNull( testRole ); assertEquals( 1, rbacManager.getAllRoles().size() ); assertEquals( 0, rbacManager.getAllPermissions().size() ); Role actualRole = rbacManager.getRole( rolename ); assertEquals( testRole.getName(), actualRole.getName() ); assertEquals( testRole.getChildRoleNames(), actualRole.getChildRoleNames() ); assertEquals( 1, rbacManager.getAllRoles().size() ); assertEquals( 0, rbacManager.getAllPermissions().size() ); /* Assert some event tracker stuff */ assertEventTracker( 1, 0, 0, 0, true, true ); }
Role role = rbacManager.getRole( roleName );
@Test public void testAddGetChildRoleViaName() throws RbacManagerException { RBACManager manager = rbacManager; rbacManager.eraseDatabase(); eventTracker.rbacInit( true ); assertNotNull( manager ); Role adminRole = manager.saveRole( getAdminRole() ); Role develRole = manager.saveRole( getDeveloperRole() ); assertEquals( 2, manager.getAllRoles().size() ); Role actualAdmin = manager.getRole( adminRole.getName() ); Role actualDevel = manager.getRole( develRole.getName() ); assertEquals( adminRole.getName(), actualAdmin.getName() ); assertEquals( adminRole.getChildRoleNames(), actualAdmin.getChildRoleNames() ); assertEquals( develRole, actualDevel ); // Now do a child role. Role projectRole = getProjectAdminRole(); String projectRoleName = projectRole.getName(); manager.saveRole( projectRole ); develRole.addChildRoleName( projectRoleName ); manager.saveRole( develRole ); assertEquals( 3, manager.getAllRoles().size() ); /* Assert some event tracker stuff */ assertEventTracker( 3, 0, 3, 0, true, true ); }
Role role = rbacManager.getRole( oldRoleName );
role = this.rbacImpl.getRole( roleName ); role = ( role == null ) ? new RoleImpl( roleName ) : role;