Добавление хешированного md5 пароля в БД MySQL

Тема в разделе "Программирование", создана пользователем Naizer, 26.01.2013.

  1. Offline

    Naizer Недавно здесь

    Регистрация:
    26.01.2013
    Сообщения:
    1
    Симпатии:
    0
    Пол:
    Мужской
    Задача такова: необходимо добавить пользователей через БД. Установлен компонент CommunityBuilder. Со всем разобрался. С помощью функций php в связке с sql запросами, пользователи добавляются корректно и отображаются в менеджере пользователей самой Joomla и компонента CB. НО не получается корректно задать хешированный пароль в таблице _users. Просто функция md5()не катит, используется соль. Класс шифрования описан в файле "libraries/joomla/user/helper.php". Выдираю оттуда этот класс, вставляю в свой файл .php ниже дописываю:

    Код (CODE):
    1. $salt = JUserHelper::genRandomPassword(32);
    2. $crypt = JUserHelper::getCryptedPassword($pas[$i], $salt);
    3. $newpas = $crypt.':'.$salt;


    Была проблема в том, что не определялся класс JCrypt, вытянул его отсюда "libraries/joomla/crypt" и также подлил в свой обработчик. В итоге генерируется нужный мне хеш, записывается в базу, но хоть ты тресни авторизация не проходит. После того как вручную меняю пароль из менеджера пользователей, генерируется новый хеш и всё отлично.. Я уже пробовал свой файлик класть в папку user, вместе с helper.php.. ничего не выходит.

    Не могу найти в каком файле обрабатывается смена пароля из менеджера, или формирование пароля при регистрации. Может нужно в моей обработке не копировать классы генерирования пароля, а подключить их? Но не знаю как выполняется это подключение..

    Такое ощущение, что в какой то таблице хранится рандомная $salt которая соответствует нужному id и без которой не проходит авторизация. Всю голову сломал, может кто подскажет.. в каком направлении двигаться хотя бы.
     
  2.  

Поделиться этой страницей

Загрузка...