Kuidas muuta Laraveli kasutaja parooli
Rakenduse kallal töötamise ajal võite mõnel põhjusel soovida kasutaja parooli kiiresti muuta ja teil pole andmebaasile juurdepääsu. Lisaks ei taha te unustatud paroolivoogu otsida. Selles artiklis näitan teile, kuidas muuta kasutaja parooli Laravelis andmebaasi sisenemata.
Mis puutub Laraveli, siis tarnitakse andmebaasis vaiketabeliga "kasutajad". See tabel vastutab kasutajaandmete, sealhulgas mandaatide, näiteks e-posti ja parooli, salvestamise eest.
Laravel kasutab oma tärkimine krüpteerimiseks parooli. Parooli muutmiseks peate krüptimiseks kasutama samu räsimistehnikaid, siis töötab see ainult Laraveli autentimisega.
Kasutaja parooli muutmine käsurea abil
Laraveli tuum sisaldab mitmeid funktsioone. Pärast paigaldamist Laravel, saame kõik need funktsioonid automaatselt. Üks neist on Laravel Tinker, REPL, mida toetab PsySH pakett. Laravel Tinker võimaldab meil suhelda Laraveli andmebaasi, töökohtade, sündmuste ja muuga.
Tinkeri abil saame muuta Laraveli kasutaja parooli. Kõik, mida peame teadma, on kasutaja e-posti aadress. Nii et alustamiseks avage terminal oma projekti juurkataloogis.
Sisestage Tinkeri keskkonda, käivitades käsu:
php artisan tinker
Kui olete sisenenud Tinkeri keskkonda, saate kontrollida Eloquent ORM-i. ORM-i abil saate hõlpsalt muuta kasutaja parooli. Oletame, et kasutaja e-posti aadress on ‘ [email protected] ‘ ja parool tuleb muuta. Esmalt tooge see kasutaja lause abil:
$user = AppUser::where('email', '[email protected]')->first();
Järgmisena määrake kasutajaobjektil Hash::make()
meetodi abil parool. Näiteks määrake parooliks ‘123456’. Nii et järgmine väide on:
$user->password = Hash::make('123456');
Lõpuks helistage Eloquent ORM-i meetod save() järgmiselt:
$user->save();
Ülaltoodud 3 käsku muudavad määratud kasutaja parooli.
Kasutaja parooli muutmine Laravelis marsruudi abil
Parooli saate muuta ka marsruudi kaudu. Kuid see pole soovitatav. Kirjutan sellest lihtsalt, sest nii saab ka parooli muuta. Marsruudi tagasihelistamisfunktsioonis kasutage sama koodi, mida kasutasime ülaltoodud Tinkeris. Mõlemad teeksid täpselt tööd. Kuulutame marsruudi ‘muutmisparooliks’ ja edastame koodi tagasihelistamisfunktsioonis, nagu allpool näidatud.
marsruudid / web.php
<?php
Route::get('changepassword', function() {
$user = AppUser::where('email', '[email protected]')->first();
$user->password = Hash::make('123456');
$user->save();
echo 'Password changed successfully.';
});
?>
Nüüd käivitage brauseris URL YOUR_DOMAIN_URL / changepassword. See helistab marsruudile ja muudab kasutaja parooli. Arendaja peab selle marsruudi eemaldama, kui parool on muudetud.