PDA

Zobacz pełną wersję : Dlaczego po zmianie i resecie hasła w Joomla! 3.2 nie można się zalogować?



Jola
11-12-2013, 05:14
Witam,
zauważyłam, że w Joomla! 3.2 użytkownik z działającym prawidłowo hasłem po zmianie tego hasła (od frontu lub od zaplecza) nie może się zalogować.
Winny jest błąd w pliku libraries/joomla/user/user.php l. 625
jest:

$array['password'] = $crypt . ':' . $salt;Powinno być:

$array['password'] = $crypt ;
Błędna linia podwójnie "soli" hasło użytkownika, mimo, że wcześniej zostało to już zrobione.
Hasło jest dłuższe niż powinno i nie jest przepuszczane przez kod sprawdzający.
Dzieje się tak tylko podczas zmiany hasła, podczas dodawania nowego konta jest OK.
Jeśli już mamy takie "kwiatki" - należy wprowadzić zmianę w pliku i na nowo zapisać hasła.
Jęśli przytrafiło się to administratorowi RatujAdmina (http://pliki.joomla.pl/katalog/dostep-i-bezpieczenstwo/ratuj-admina.html) dla Joomla 3.2 rozwiązuje problem.

Drugi problem z resetem hasła: nie działa kod weryfikacyjny, a jeśli już zadziała to znowu nie można się zalogować :)
plik components/com_users/models/reset.php l.269 jest

$testcrypt = JUserHelper::getCryptedPassword($data['token'], $salt);
zmienić na:

$testcrypt = JUserHelper::getCryptedPassword($data['token'], $salt, 'md5-hex');To nam naprawiło kod weryfikacyjny.
Teraz hasło: linia 177 jest:

$password = $crypted . ':' . $salt;zmienić na:

$password = $crypted;i już