public void updateUser(org.openl.rules.security.User user) { User persistUser = userDao.getUserByName(user.getUsername()); persistUser.setFirstName(user.getFirstName()); persistUser.setSurname(user.getLastName()); Set<Group> groups = new HashSet<Group>(); for (GrantedAuthority auth : user.getAuthorities()) { groups.add(groupDao.getGroupByName(auth.getAuthority())); } persistUser.setGroups(groups); if (user.getPassword() != null) { persistUser.setPasswordHash(user.getPassword()); } userDao.update(persistUser); }
public boolean isOnlyAdmin(Object objUser) { String adminPrivilege = Privileges.ADMIN.name(); return ((User) objUser).hasPrivilege(adminPrivilege) && userManagementService.getUsersByPrivilege(adminPrivilege).size() == 1; }
public void editUser() { User user = userManagementService.loadUserByUsername(username); if (!user.isInternalUser()) { firstName = user.getFirstName(); lastName = user.getLastName(); } String passwordHash = StringUtils.isBlank(changedPassword) ? null : passwordEncoder.encode(changedPassword); userManagementService.updateUser( new SimpleUser(firstName, lastName, username, passwordHash, getSelectedGroups())); }
@PostConstruct public void initialize() { setUsername(currentUserInfo.getUserName()); Authentication authentication = currentUserInfo.getAuthentication(); if (authentication.getPrincipal() instanceof User) { user = (User) authentication.getPrincipal(); } else if (authentication.getDetails() instanceof User) { user = (User) authentication.getDetails(); } else { try { user = userManagementService.loadUserByUsername(getUsername()); } catch (UsernameNotFoundException e) { log.warn("User details for user '" + getUsername() + "' can't be retrieved."); user = new SimpleUser(null, null, getUsername(), null, Collections.<Privilege>emptyList()); } } setFirstName(user.getFirstName()); setLastName(user.getLastName()); setCurrentPassword(user.getPassword()); setInternalUser(user.isInternalUser()); }
public String[] getGroups(Object objUser) { List<String> groups = new ArrayList<String>(); @SuppressWarnings("unchecked") Collection<Privilege> authorities = (Collection<Privilege>) ((User) objUser).getAuthorities(); for (Privilege authority : authorities) { if (authority instanceof Group) { groups.add(authority.getName()); } } return groups.toArray(new String[groups.size()]); }
/** * Validates newPassword and confirmPassword on identity. If newPassword * isEmty, then validation isn't needed */ public void passwordsValidator(FacesContext context, UIComponent component, Object value) { newPassword = (String) value; if (StringUtils.isNotEmpty(newPassword)) { UIInput uiInputConfirmPassword = (UIInput) component.getAttributes().get("confirmPassword"); String confirmPasswordString = uiInputConfirmPassword.getSubmittedValue().toString(); UIInput uiInputPassword = (UIInput) component.getAttributes().get("currentPassword"); String passwordString = uiInputPassword.getValue().toString(); String userPasswordHash = user.getPassword(); if (StringUtils.isEmpty(passwordString)) { throw new ValidatorException(new FacesMessage("Enter your password")); } if (!newPassword.equals(confirmPasswordString)) { throw new ValidatorException(new FacesMessage("New password and confirm password do not match.")); } else { isPasswordValid = true; } if (!passwordEncoder.matches(passwordString, userPasswordHash)) { throw new ValidatorException(new FacesMessage("Incorrect current password!")); } } }
userManagementService.deleteUser(user.getUsername());
@PostConstruct public void initialize() { setUsername(currentUserInfo.getUserName()); Authentication authentication = currentUserInfo.getAuthentication(); if (authentication.getPrincipal() instanceof User) { user = (User) authentication.getPrincipal(); } else if (authentication.getDetails() instanceof User) { user = (User) authentication.getDetails(); } else { try { user = userManagementService.loadUserByUsername(getUsername()); } catch (UsernameNotFoundException e) { log.warn("User details for user '" + getUsername() + "' can't be retrieved."); user = new SimpleUser(null, null, getUsername(), null, Collections.<Privilege>emptyList()); } } setFirstName(user.getFirstName()); setLastName(user.getLastName()); setCurrentPassword(user.getPassword()); setInternalUser(user.isInternalUser()); }
public String[] getGroups(Object objUser) { List<String> groups = new ArrayList<String>(); @SuppressWarnings("unchecked") Collection<Privilege> authorities = (Collection<Privilege>) ((User) objUser).getAuthorities(); for (Privilege authority : authorities) { if (authority instanceof Group) { groups.add(authority.getName()); } } return groups.toArray(new String[groups.size()]); }
/** * Validates newPassword and confirmPassword on identity. If newPassword * isEmty, then validation isn't needed */ public void passwordsValidator(FacesContext context, UIComponent component, Object value) { newPassword = (String) value; if (StringUtils.isNotEmpty(newPassword)) { UIInput uiInputConfirmPassword = (UIInput) component.getAttributes().get("confirmPassword"); String confirmPasswordString = uiInputConfirmPassword.getSubmittedValue().toString(); UIInput uiInputPassword = (UIInput) component.getAttributes().get("currentPassword"); String passwordString = uiInputPassword.getValue().toString(); String userPasswordHash = user.getPassword(); if (StringUtils.isEmpty(passwordString)) { throw new ValidatorException(new FacesMessage("Enter your password")); } if (!newPassword.equals(confirmPasswordString)) { throw new ValidatorException(new FacesMessage("New password and confirm password do not match.")); } else { isPasswordValid = true; } if (!passwordEncoder.matches(passwordString, userPasswordHash)) { throw new ValidatorException(new FacesMessage("Incorrect current password!")); } } }
userManagementService.deleteUser(user.getUsername());
public void updateUser(org.openl.rules.security.User user) { User persistUser = userDao.getUserByName(user.getUsername()); persistUser.setFirstName(user.getFirstName()); persistUser.setSurname(user.getLastName()); Set<Group> groups = new HashSet<Group>(); for (GrantedAuthority auth : user.getAuthorities()) { groups.add(groupDao.getGroupByName(auth.getAuthority())); } persistUser.setGroups(groups); if (user.getPassword() != null) { persistUser.setPasswordHash(user.getPassword()); } userDao.update(persistUser); }
public void editUser() { User user = userManagementService.loadUserByUsername(username); if (!user.isInternalUser()) { firstName = user.getFirstName(); lastName = user.getLastName(); } String passwordHash = StringUtils.isBlank(changedPassword) ? null : passwordEncoder.encode(changedPassword); userManagementService.updateUser( new SimpleUser(firstName, lastName, username, passwordHash, getSelectedGroups())); }
/** * Return the user's privileges * * @return Collection of user's privileges */ private Collection<Privilege> getPriveleges() { Collection<Privilege> privileges = new ArrayList<Privilege>(); for (GrantedAuthority auth : user.getAuthorities()) { Privilege group = groupManagementService.getGroupByName(auth.getAuthority()); privileges.add(group); } return privileges; }
public boolean isOnlyAdmin(Object objUser) { String adminPrivilege = Privileges.ADMIN.name(); return ((User) objUser).hasPrivilege(adminPrivilege) && userManagementService.getUsersByPrivilege(adminPrivilege).size() == 1; }
setCurrentPassword(encodedPassword); } else { setCurrentPassword(getUser().getPassword());
public void addUser(org.openl.rules.security.User user) { User persistUser = new User(); persistUser.setLoginName(user.getUsername()); persistUser.setPasswordHash(user.getPassword()); persistUser.setFirstName(user.getFirstName()); persistUser.setSurname(user.getLastName()); Set<Group> groups = new HashSet<Group>(); for (GrantedAuthority auth : user.getAuthorities()) { groups.add(groupDao.getGroupByName(auth.getAuthority())); } persistUser.setGroups(groups); userDao.save(persistUser); }
/** * Return the user's privileges * * @return Collection of user's privileges */ private Collection<Privilege> getPriveleges() { Collection<Privilege> privileges = new ArrayList<Privilege>(); for (GrantedAuthority auth : user.getAuthorities()) { Privilege group = groupManagementService.getGroupByName(auth.getAuthority()); privileges.add(group); } return privileges; }
public List<org.openl.rules.security.User> getUsersByPrivilege(String privilege) { List<User> users = userDao.getAllUsers(); List<org.openl.rules.security.User> resultUsers = new ArrayList<org.openl.rules.security.User>(); for (User user : users) { org.openl.rules.security.User resultUser = new SimpleUser(user.getFirstName(), user.getSurname(), user.getLoginName(), user.getPasswordHash(), PrivilegesEvaluator.createPrivileges(user)); if (resultUser.hasPrivilege(Privileges.ADMIN.name()) || resultUser.hasPrivilege(privilege)) { resultUsers.add(resultUser); } } return resultUsers; }
setCurrentPassword(encodedPassword); } else { setCurrentPassword(getUser().getPassword());