laravel更改默認的登錄密碼加密方式


laravel更改默認的登錄密碼加密方式 

 

laravel 默認用的登錄密碼加密方式是:

$password = Hash::make('password');

 

而我平時用的密碼加密方式是:

$password = md5('password'.'salt'); //其中的salt是一個隨機串

 

那么怎么把默認的改成自己想要的呢?

我谷歌了一下,還真讓我找到了。轉送:http://blueve.me/archives/898

為了防止這個網站打不開,我自己再稍微整理了一下,以備后用:

  1. 首先,打開這個文件夾:/vender/laravel/framework/src/illuminate/Auth

   2. 打開EloquentUserProvider.php文件,將validateCredentials這個方法里的內容改成這樣的:

public function validateCredentials(UserInterface $user, array $credentials) { $plain = $credentials['password']; $authPassword = $user->getAuthPassword(); $authSalt = $user->getAuthSalt(); return $authPassword === md5($plain.$authSalt); }

 

3.同一個目錄下,打開UserInterface.php文件,在后面添加這一句:

public function getAuthSalt();

 

4.打開:/app/models/User.php文件,在里面添加這個方法:

public function getAuthSalt() {    return $this->salt; }

 

這樣,就可以用手冊里的“用戶驗證”和“判斷用戶是否已經驗證”等功能了,還有,我密碼和隨機串在數據庫中存的是password和salt字段。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM