public void reactivateUser(final DirContext ctx, final LdapUser user) throws NamingException { log.info("Reactivate deactivated user: " + buildDn(null, user)); final String ou = LdapUtils.getOu(user.getOrganizationalUnit()); if (ou.startsWith(DEACTIVATED_SUB_CONTEXT2) == false) { log.info("Object isn't in a deactivated sub-context, nothing will be done: " + buildDn(null, user)); return; } String newPath; if (ou.startsWith(DEACTIVATED_SUB_CONTEXT3) == true) { newPath = ou.substring(DEACTIVATED_SUB_CONTEXT3.length()); } else { newPath = ou.substring(DEACTIVATED_SUB_CONTEXT2.length()); } move(ctx, user, newPath); user.setOrganizationalUnit(newPath); }
private void setUserAsRestrictedUser(final DirContext ctx, final LdapUser user) throws NamingException { log.info("Move user to restricted sub context: " + buildDn(null, user)); if (user.isDeactivated() == true) { log.info("User is deactivated, thus the restricted-user-status is ignored: " + buildDn(null, user)); return; } final String ou = user.getOrganizationalUnit(); if (ou.startsWith(RESTRICTED_USER_SUB_CONTEXT2) == false) { // Move user to the sub-context "restricted". final String newOu = LdapUtils.getOu(RESTRICTED_USER_SUB_CONTEXT, user.getOrganizationalUnit()); move(ctx, user, newOu); user.setOrganizationalUnit(newOu); } }
log.info("Move user from restricted sub context: " + buildDn(null, user)); String newPath; if (ou.startsWith(RESTRICTED_USER_SUB_CONTEXT3) == true) {
public void deactivateUser(final DirContext ctx, final LdapUser user) throws NamingException { log.info("Deactivate user: " + buildDn(null, user)); final List<ModificationItem> modificationItems = new ArrayList<ModificationItem>(); modificationItems.add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute("userPassword", null))); modificationItems .add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute("mail", DEACTIVATED_MAIL))); buildDn(null, user); modify(ctx, user, modificationItems); final String ou = user.getOrganizationalUnit(); if (ou.startsWith(DEACTIVATED_SUB_CONTEXT2) == false) { // Move user to the sub-context "deactivated". final String newOu = LdapUtils.getOu(DEACTIVATED_SUB_CONTEXT, getOuBase()); move(ctx, user, newOu); user.setOrganizationalUnit(newOu); } }
public void changeWlanPassword(final LdapUser user, final String newPassword) { final String sambaPasswordAttributeId = "sambaNTPassword"; if (isSambaAccountsConfigured() == false) { log.error("Could not change attribute " + sambaPasswordAttributeId + " because the samba accounts are not configured."); return; } if (user.getSambaSIDNumber() == null) { log.error("Could not change attribute " + sambaPasswordAttributeId + " because the sambaSID is null."); return; } log.info("Change attribute " + sambaPasswordAttributeId + " for " + getObjectClass() + ": " + buildDn(null, user)); final String sambaNTPassword = SmbEncrypt.NTUNICODEHash(newPassword); final ModificationItem modItem = new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute(sambaPasswordAttributeId, sambaNTPassword)); // Perform the update modify(user, Collections.singletonList(modItem)); }
public void changePassword(final LdapUser user, final String oldPassword, final String newPassword) { final String userPasswordId = "userPassword"; log.info("Change attribute " + userPasswordId + " for " + getObjectClass() + ": " + buildDn(null, user)); final List<ModificationItem> modificationItems = new ArrayList<>(); if (oldPassword != null) { modificationItems .add(new ModificationItem(DirContext.REMOVE_ATTRIBUTE, new BasicAttribute(userPasswordId, oldPassword))); modificationItems .add(new ModificationItem(DirContext.ADD_ATTRIBUTE, new BasicAttribute(userPasswordId, newPassword))); } else { modificationItems .add(new ModificationItem(DirContext.REPLACE_ATTRIBUTE, new BasicAttribute(userPasswordId, newPassword))); } // Perform the update modify(user, modificationItems); }
ldapUserDao.buildDn(userBase, updatedLdapUser); updatedLdapUsers.add(updatedLdapUser); } catch (final Exception ex) { ldapUserDao.buildDn(userBase, updatedLdapUser); updatedLdapUsers.add(updatedLdapUser); log.error("Error while proceeding user '" + user.getUsername() + "'. Continuing with next user.", ex);