/** * Actualiza los datos de los usuarios de LDAP en la BBDD. * * @return bool */ public static function updateLDAPUserInDB(User $User) { $passdata = UserPass::makeUserPassHash($User->getUserPass()); $query = 'UPDATE usrData SET ' . 'user_pass = :pass,' . 'user_hashSalt = :hashSalt,' . 'user_name = :name,' . 'user_email = :email,' . 'user_lastUpdate = NOW(),' . 'user_isLdap = 1 ' . 'WHERE user_id = :id LIMIT 1'; $data['pass'] = $passdata['pass']; $data['hashSalt'] = $passdata['salt']; $data['name'] = $User->getUserName(); $data['email'] = $User->getUserEmail(); $data['id'] = UserUtil::getUserIdByLogin($User->getUserLogin()); return DB::getQuery($query, __FUNCTION__, $data); }
/** * Actualizar la clave de un usuario desde phpPMS. * * @param string $userLogin con el login del usuario * @param string $userPass con la clave del usuario * @return bool * * Esta función actualiza la clave de un usuario que ha sido migrado desde phpPMS */ public static function migrateUser($userLogin, $userPass) { $passdata = UserPass::makeUserPassHash($userPass); $query = 'UPDATE usrData SET ' . 'user_pass = :pass,' . 'user_hashSalt = :salt,' . 'user_lastUpdate = NOW(),' . 'user_isMigrate = 0 ' . 'WHERE user_login = :login ' . 'AND user_isMigrate = 1 ' . 'AND (user_pass = SHA1(CONCAT(user_hashSalt,:passOld)) ' . 'OR user_pass = MD5(:passOldMd5)) LIMIT 1'; $data['pass'] = $passdata['pass']; $data['salt'] = $passdata['salt']; $data['login'] = $userLogin; $data['passOld'] = $userPass; $data['passOldMd5'] = $userPass; if (DB::getQuery($query, __FUNCTION__, $data) === false) { return false; } $log = new Log(__FUNCTION__); $log->addDescription(_('Usuario actualizado')); $log->addDescription('Login: ' . $userLogin); $log->writeLog(); Email::sendEmail($log); return true; }
/** * Modificar la clave de un usuario. * * @return bool */ public function updateUserPass() { $passdata = UserPass::makeUserPassHash($this->_userPass); $userLogin = UserUtil::getUserLoginById($this->_userId); $query = 'UPDATE usrData SET ' . 'user_pass = :pass,' . 'user_hashSalt = :salt,' . 'user_isChangePass = 0,' . 'user_lastUpdate = NOW() ' . 'WHERE user_id = :id LIMIT 1'; $data['pass'] = $passdata['pass']; $data['salt'] = $passdata['salt']; $data['id'] = $this->_userId; if (DB::getQuery($query, __FUNCTION__, $data) === false) { return false; } $this->queryLastId = DB::$lastId; Log::writeNewLogAndEmail(_('Modificar Clave Usuario'), sprintf('%s: %s', Html::strongText(_('Login')), $userLogin)); return true; }