Package org.apache.jetspeed.om.security

Examples of org.apache.jetspeed.om.security.JetspeedUser


     * @param context The velocity context for this request.
     */
    public void doDelete(RunData rundata, Context context)
        throws Exception
    {
        JetspeedUser user = null;
        try
        {
            //
            // get the user object from the selected entry in the browser
            //
            user = (JetspeedUser)JetspeedSecurity.getUser(
                       rundata.getParameters().getString(SecurityConstants.PARAM_ENTITY_ID));

            if (rundata.getUser().getUserName().equals(user.getUserName()))
            {
                DynamicURI duri = new DynamicURI (rundata);
                duri.addPathInfo(SecurityConstants.PANE_NAME, SecurityConstants.PANEID_USER_UPDATE);
                duri.addPathInfo(SecurityConstants.PARAM_MSGID, SecurityConstants.MID_CANT_DELETE_CURRENT);
                if (user != null)
                    duri.addPathInfo(SecurityConstants.PARAM_ENTITY_ID, user.getUserName());
                duri.addQueryData(SecurityConstants.PARAM_MODE, SecurityConstants.PARAM_MODE_DELETE);
                rundata.setRedirectURI(duri.toString());
                // save values that user just entered so they don't have to re-enter
                if (user != null)
                   rundata.getUser().setTemp(TEMP_USER, user);
                return;
            }

            //
            // remove the user
            //
            JetspeedSecurity.removeUser(user.getUserName());

        }
        catch (Exception e)
        {
           // log the error msg
            logger.error("Exception", e);

            //
            // error on delete - display error message
            //
            DynamicURI duri = new DynamicURI (rundata);
            duri.addPathInfo(SecurityConstants.PANE_NAME, SecurityConstants.PANEID_USER_UPDATE);
            duri.addPathInfo(SecurityConstants.PARAM_MSGID, SecurityConstants.MID_DELETE_FAILED);
            if (user != null)
                duri.addPathInfo(SecurityConstants.PARAM_ENTITY_ID, user.getUserName());
            duri.addQueryData(SecurityConstants.PARAM_MODE, SecurityConstants.PARAM_MODE_DELETE);
            rundata.setRedirectURI(duri.toString());

            // save values that user just entered so they don't have to re-enter
           if (user != null)
View Full Code Here


            duri.addPathInfo(SecurityConstants.PARAM_MSGID, SecurityConstants.MID_MISSING_PARAMETER);
            rundata.setRedirectURI(duri.toString());
            return;
        }

        JetspeedUser user = JetspeedSecurity.getUser(entityid);
        if (null == user)
        {
            logger.error("UserRoleBrowser: Failed to get user: " + entityid );
            DynamicURI duri = new DynamicURI (rundata);
            duri.addPathInfo(SecurityConstants.PANE_NAME, SecurityConstants.PANEID_USERROLE_UPDATE);
            duri.addPathInfo(SecurityConstants.PARAM_MSGID, SecurityConstants.MID_MISSING_PARAMETER);
            rundata.setRedirectURI(duri.toString());
            return;
        }


        try
        {
            List roles = (List)rundata.getUser().getTemp(SecurityConstants.CONTEXT_ROLES);
            List selected = (List)rundata.getUser().getTemp(SecurityConstants.CONTEXT_SELECTED);

            if (roles == null || selected == null)
            {
                DynamicURI duri = new DynamicURI (rundata);
                duri.addPathInfo(SecurityConstants.PANE_NAME, SecurityConstants.PANEID_USERROLE_UPDATE);
                duri.addPathInfo(SecurityConstants.PARAM_MSGID, SecurityConstants.MID_MISSING_PARAMETER);
                rundata.setRedirectURI(duri.toString());
                return;
            }

            //
            // walk thru all the roles, see if anything changed
            // if changed, update the database
            //
            for (int ix = 0; ix < roles.size(); ix++)
            {
                boolean newValue = rundata.getParameters().getBoolean("box_" + ((Role)roles.get(ix)).getName(), false);
                boolean oldValue = ((Boolean)selected.get(ix + 1)).booleanValue();
                //System.out.println("In role:"+((Role)roles.get(ix)).getName()+" newValue="+newValue+" oldValue="+oldValue);
                if (newValue != oldValue)
                {
                    if (newValue == true)
                    {
                        // grant a role to a user
                        Role newRole = (Role) roles.get(ix);
                        JetspeedSecurity.grantRole( user.getUserName(), newRole.getName());

                        // If role profile merging is active, append profile for the new role
                        if (Profiler.useRoleProfileMerging())
                        {
                            appendNewRoleProfile((JetspeedRunData) rundata, user, newRole);
                        }
                    }
                    else
                    {
                        // revoke a role from a user
                        JetspeedSecurity.revokeRole( user.getUserName(),
                                                    ((Role)roles.get(ix)).getName() );
                    }
                }
            }

            // clear the temp values
            rundata.getUser().setTemp(SecurityConstants.CONTEXT_ROLES, null);
            rundata.getUser().setTemp(SecurityConstants.CONTEXT_SELECTED, null);

        }
        catch (Exception e)
        {
           //  the error msg
            logger.error("Failed update role+permission: ", e);
            //
            // error on update - display error message
            //
            DynamicURI duri = new DynamicURI (rundata);
            duri.addPathInfo(SecurityConstants.PANE_NAME, SecurityConstants.PANEID_USERROLE_UPDATE);
            duri.addPathInfo(SecurityConstants.PARAM_MSGID, SecurityConstants.MID_UPDATE_FAILED);
            if (user != null)
                duri.addPathInfo(SecurityConstants.PARAM_ENTITY_ID, user.getUserName());
            rundata.setRedirectURI(duri.toString());

        }
    }
View Full Code Here

                                       RunData rundata,
                                       String userid)
        throws Exception
    {
        // get the user object
        JetspeedUser user = JetspeedSecurity.getUser(userid);
        if (null == user)
        {
            // no User found
            logger.error("UserRoleBrowser: Failed to get user: " + userid );
            return;
        }
        // get master list of roles
        Iterator roles = JetspeedSecurity.getRoles();
        Vector masterRoles = new Vector();
        Vector selected = new Vector();
        int ix = 0;
        boolean sel = false;
        selected.add(ix, new Boolean(sel));
        while(roles.hasNext())
        {
            Role role = (Role)roles.next();
            //System.out.println("In buildUserRoleContext role="+role.getName());
            masterRoles.add(role);
            sel = JetspeedSecurity.hasRole(user.getUserName(), role.getName());
            //System.out.println("In buildUserRoleContext sel="+sel);
            ix = ix + 1;
            selected.add(ix, new Boolean(sel));
        }
        masterRoles.trimToSize();
View Full Code Here

        StringBuffer path = new StringBuffer();

        // move the base dir is either user or role is specified
        Role role = locator.getRole();
        Group group = locator.getGroup();
        JetspeedUser user = locator.getUser();

        if (user != null)
        {
            path.append(Profiler.PARAM_USER);
            String name = user.getUserName();
            if (null != name && name.length() > 0)
            {
                path.append(File.separator)
                    .append(name);
            }
View Full Code Here

                                 rex.toString());
                    }
                }
                while (users.hasNext())
                {
                    JetspeedUser user = (JetspeedUser) users.next();
                    String compareValue = null;
                    if (filterType.equals(FILTER_TYPE_USERNAME))
                    {
                        compareValue = user.getUserName();
                    }
                    else if (filterType.equals(FILTER_TYPE_LASTNAME))
                    {
                        compareValue = user.getLastName();
                    }

                    if (compareValue != null)
                    {
                        if (useRE && r.match(compareValue))
View Full Code Here

        StringBuffer path = new StringBuffer();

        // move the base dir is either user or role is specified
        Role role = locator.getRole();
        Group group = locator.getGroup();
        JetspeedUser user = locator.getUser();

        if (user != null)
        {
            path.append(Profiler.PARAM_USER);
            String name = user.getUserName();
            if (null != name && name.length() > 0)
            {
                path.append(File.separator)
                .append(name);
            }
View Full Code Here

     */   
    private static final JetspeedLogger logger = JetspeedLogFactoryService.getLogger(SendNewUserNotificationEmail.class.getName());   
   
    public void doPerform( RunData data ) throws Exception
    {
        JetspeedUser user = JetspeedSecurity.getUser(data.getParameters().getString("username", ""));       
        DynamicURI url = new DynamicURI(data)
                             .addPathInfo("pane0", "Security" )
                             .addPathInfo("select-panel2", "User")
                             .addPathInfo("entityid", user.getUserName() )
                             .addQueryData("mode","update");
        try
        {
            //build body via template
            StringWriter email_body = new StringWriter();
View Full Code Here

     */
    public void setAnonymous(boolean anonymous)
    {
        try
        {
            JetspeedUser user = JetspeedUserFactory.getInstance();
            user.setUserName(JetspeedSecurity.getAnonymousUserName());
            this.setUser(user);
        }
        catch (Exception e)
        {
            logger.error("Could not get Anonymous user", e);
View Full Code Here

     * Check equality for given User object with this ProfileLocator's User
     * object.
     */
    private boolean userEquals(ProfileLocator locator)
    {
        JetspeedUser user = locator.getUser();
        // if either of reference is null return false.
        if (exclusiveOr(this.user, user))
        {
            return false;
        }
        // check if both are non-nulls
        if (assertNotNull(this.user) && assertNotNull(user))
        {
            return stringEquals(this.user.getUserName(), user.getUserName());
        }
        // can be anonymous user
        return this.anonymous == locator.getAnonymous();
    }
View Full Code Here

        //FIXME: if the user is not found (this can happen, for instance,
        // if the anonymous user is not in the DB), it throws a terrible exception
        // in the user's face
        super.doPerform(data);        

        JetspeedUser user = (JetspeedUser) data.getUser();
       
        // get remote user from ntlm
        String userName = this.getRemoteUser(data);

        if ((user == null || !user.hasLoggedIn()))
        {
            if (userName != null && userName.length() > 0)
            {
                byte[] temp = userName.getBytes();
                StringBuffer buffer = new StringBuffer();
                for (int i = 0; i < temp.length; i++)
                {
                    if (temp[i] != 0)
                    {
                        if (invalidChars == null || invalidChars.indexOf((int) temp[i]) < 0)
                        {
                            buffer.append((char) temp[i]);
                        }
                    }
                }
                userName = buffer.toString();
                try
                {
                    user = JetspeedSecurity.getUser(userName);
                    data.setUser(user);
                    user.setHasLoggedIn(new Boolean(true));
                    user.updateLastLogin();
                    data.save();
                    if (JetspeedSecurityCache.getAcl(userName) == null)
                    {
                        JetspeedSecurityCache.load(userName);
                    }
                    logger.info("NTLMSessionValidator: automatic login using [" + userName + "]");
                }
                catch (LoginException noSuchUser)
                {
                    //user not found - ignore it - they will not be logged in automatically
                }
                catch (UnknownUserException unknownUser)
                {
                    //user not found - ignore it - they will not be logged in automatically
                    if (logger.isWarnEnabled())
                    {
                        logger.warn("NTLMSessionValidator: username [" + userName + "] does not exist or authentication failed, "
                                 + "redirecting to anon profile");
                    }
                }
            }
        }

        // now, define Jetspeed specific properties, using the customized
        // RunData properties
        JetspeedRunData jdata = null;

        try
        {
            jdata = (JetspeedRunData) data;
        }
        catch (ClassCastException e)
        {
            logger.error("The RunData object does not implement the expected interface, "
                      + "please verify the RunData factory settings");
            return;
        }
        String language = (String) data.getRequest().getParameter("js_language");

        if (null != language)
        {
            user.setPerm("language", language);
        }

        // Get the locale store it in the user object
        CustomLocalizationService locService =
            (CustomLocalizationService) ServiceUtil.getServiceByName(LocalizationService.SERVICE_NAME);
View Full Code Here

TOP

Related Classes of org.apache.jetspeed.om.security.JetspeedUser

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.