Package org.geoserver.security.impl

Examples of org.geoserver.security.impl.GeoServerUser


            buff.setLength(buff.length()-1);
            throw new IOException ("More than one user have auth key: "+key+
                    ". Problematic users :" + buff.toString());
        }
       
        GeoServerUser user = set.first();
        if (user.isEnabled()==false) {
            LOGGER.info("Found user "+user.getUsername()+ " for key " + key +
                    ", but this user is disabled");
            return null;
        }
        return (GeoServerUser) getUserGroupService().loadUserByUsername(user.getUsername());
    }
View Full Code Here


        if (principal!=null && principal.trim().length()==0)
            principal=null;       
        try {
            if (principal!=null && PreAuthenticatedUserNameRoleSource.UserGroupService.equals(getRoleSource())) {
                GeoServerUserGroupService service = getSecurityManager().loadUserGroupService(getUserGroupServiceName());
                GeoServerUser u = service.getUserByUsername(principal);
                if (u!=null && u.isEnabled()==false) {
                    principal=null;
                    handleDisabledUser(u, request);
                }
               
            }
View Full Code Here

        if (details!=null) {           
            roles.addAll(details.getAuthorities());                       
        } else {       
            RoleCalculator calc = new RoleCalculator(getSecurityManager().getActiveRoleService());
            try {
                roles.addAll(calc.calculateRoles(new GeoServerUser(user)));
            } catch (IOException e) {
                throw new AuthenticationServiceException(e.getLocalizedMessage(),e);
            }                       
        }  
        roles.add(GeoServerRole.AUTHENTICATED_ROLE);
View Full Code Here

        }

        //fall back on including every group the user is part of
        List<String> groupNames = new ArrayList<String>();
        for (GeoServerUserGroupService ugService : loadUserGroupServices()) {
            GeoServerUser user = ugService.getUserByUsername(userDetails.getUsername());
            if (user != null) {
                for (GeoServerUserGroup group : ugService.getGroupsForUser(user)) {
                    groupNames.add(group.getGroupname());
                }
            }
View Full Code Here

                configAttribEd.setAsText(props.getProperty(username));

                // if the parsing succeeded turn that into a user object
                UserAttribute attr = (UserAttribute) configAttribEd.getValue();
                if (attr != null) {
                    GeoServerUser user =
                        userGroupStore.createUserObject(username, attr.getPassword(), attr.isEnabled());
                    userGroupStore.addUser(user);

                    for (GrantedAuthority auth : attr.getAuthorities()) {
                        String roleName = GeoServerRole.ADMIN_ROLE.getAuthority().equals(auth.getAuthority()) ?
View Full Code Here

        JDBCConnectAuthProviderConfig config = createAuthConfg("jdbc2", ugService.getName());
        getSecurityManager().saveAuthenticationProvider(config);
        GeoServerAuthenticationProvider provider = getSecurityManager().loadAuthenticationProvider("jdbc2");
       
        GeoServerUserGroupStore ugStore =  ugService.createStore();
        GeoServerUser sa = ugStore.createUserObject("sa", "", true);
        ugStore.addUser(sa);
        ugStore.store();
       
        GeoServerRoleStore roleStore =  roleService.createStore();
        roleStore.addRole(GeoServerRole.ADMIN_ROLE);
        roleStore.associateRoleToUser(GeoServerRole.ADMIN_ROLE, sa.getUsername());
        roleStore.store();
        getSecurityManager().setActiveRoleService(roleService);
       
       
        UsernamePasswordAuthenticationToken token = new UsernamePasswordAuthenticationToken("sa","");
        token.setDetails("details");
        assertTrue(provider.supports(token.getClass()));
        assertFalse(provider.supports(RememberMeAuthenticationToken.class));
       
        Authentication auth = provider.authenticate(token);
        assertNotNull(auth);
        assertEquals("sa", auth.getPrincipal());
        assertNull(auth.getCredentials());
        assertEquals("details", auth.getDetails());
        assertEquals(2, auth.getAuthorities().size());
        checkForAuthenticatedRole(auth);
        assertTrue(auth.getAuthorities().contains(GeoServerRole.ADMIN_ROLE));
       
       
        // Test disabled user
        ugStore =  ugService.createStore();
        sa.setEnabled(false);
        ugStore.updateUser(sa);
        ugStore.store();
       
        assertNull(provider.authenticate(token));
       
View Full Code Here

                    Node propertyNode = propertyNodes.item(j);
                    String propertyName = xmlXPath.getPropertyNameExpression().evaluate(propertyNode);
                    String propertyValue = xmlXPath.getPropertyValueExpression().evaluate(propertyNode);
                    userProps.put(propertyName, propertyValue);
                }                               
                GeoServerUser user=createUserObject(userName, userPassword, userEnabled);

                helper.userMap.put(user.getUsername(), user);
                user.getProperties().clear();       // set properties
                for (Object key: userProps.keySet()) {
                    user.getProperties().put(key, userProps.get(key));
                    SortedSet<GeoServerUser> propUsers = helper.propertyMap.get(key);
                    if (propUsers==null) {
                        propUsers=new TreeSet<GeoServerUser>();
                        helper.propertyMap.put((String)key, propUsers);
                    }
                    propUsers.add(user);
                }
            }
                       
            NodeList groupNodes = (NodeList) xmlXPath.getGroupListExpression().evaluate(doc,XPathConstants.NODESET);
            for ( int i=0 ; i <groupNodes.getLength();i++) {
                Node groupNode = groupNodes.item(i);
                String groupName = xmlXPath.getGroupNameExpression().evaluate(groupNode);
                boolean groupEnabled = Util.convertToBoolean(xmlXPath.getGroupEnabledExpression().evaluate(groupNode),true);
                GeoServerUserGroup group= createGroupObject(groupName, groupEnabled);
                helper.groupMap.put(groupName, group);
                NodeList memberNodes = (NodeList) xmlXPath.getGroupMemberListExpression().evaluate(groupNode,XPathConstants.NODESET);
                for ( int j=0 ; j <memberNodes.getLength();j++) {
                    Node memberNode = memberNodes.item(j);
                    String memberName = xmlXPath.getGroupMemberNameExpression().evaluate(memberNode);
                    GeoServerUser member=helper.userMap.get(memberName);
                   
                    SortedSet<GeoServerUser> members=helper.group_userMap.get(group);
                    if (members==null) {
                        members=new TreeSet<GeoServerUser>();
                        helper.group_userMap.put(group, members);
View Full Code Here

           

        Connection con=null;
        PreparedStatement ps = null,ps2=null;
        ResultSet rs = null,rs2=null;
        GeoServerUser u  = null;
        try {
            con = getConnection();
            ps = getDMLStatement("users.keyed",con);           
            ps.setString(1, username);
            rs = ps.executeQuery();
            if (rs.next()) {               
                String password = rs.getString(1);
                String enabledString = rs.getString(2);
                boolean isEnabled = convertFromString(enabledString);
                u = createUserObject(username,password, isEnabled);
                ps2 = getDMLStatement("userprops.selectForUser",con);           
                ps2.setString(1, username);
                rs2 = ps2.executeQuery();
                while (rs2.next()) {
                    String propName = rs2.getString(1);
                    Object propValue = rs2.getObject(2);
                    u.getProperties().put(propName, propValue==null ? "" : propValue);
                }
               
            }           
        } catch (SQLException ex) {
            throw new IOException(ex);
View Full Code Here

            while (rs.next()) {               
                String username = rs.getString(1);
                String password = rs.getString(2);
                String enabledString = rs.getString(3);
                boolean isEnabled= convertFromString(enabledString);
                GeoServerUser u = createUserObject(username,password, isEnabled);               
                map.put(username, u);
            }
           
            ps.close();
            rs.close();
           
            ps = getDMLStatement("userprops.all",con);
            rs = ps.executeQuery();
            while (rs.next()) {   
                String useName = rs.getString(1);
                String propName = rs.getString(2);
                Object propValue = rs.getString(3);
                GeoServerUser u = map.get(useName);
                if (u!=null) {
                    u.getProperties().put(propName, propValue==null ? "" : propValue);
                }
            }
        } catch (SQLException ex) {
            throw new IOException(ex);
        } finally {
View Full Code Here

   
    /**
     * @see org.geoserver.security.GeoServerUserGroupService#createUserObject(java.lang.String, java.lang.String, boolean)
     */
    public GeoServerUser createUserObject(String username,String password, boolean isEnabled) throws IOException{
       GeoServerUser user = new GeoServerUser(username);
       user.setEnabled(isEnabled);
       user.setPassword(password);
       return user;
    }
View Full Code Here

TOP

Related Classes of org.geoserver.security.impl.GeoServerUser

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.