【发布时间】:2014-08-15 06:40:03
【问题描述】:
我想在 laravel 4 中使用身份验证 我改变了桌子和 mobel 的名字
用户注册时,我有密码并保存,哈希为:
$password = Hash::make(Input::get('password'));
然后当用户登录时,我想先验证他/她的身份。我是这样做的:
if (Auth::attempt(array('username' => Input::get('usernaem'), 'password' => Hash::make(Input::get('password')))))
{
return Redirect::intended('dashboard');
}
这永远不会成功。我尝试调试代码,似乎Hask::make 函数总是给出不同的结果。
我是否使用了良好的身份验证方法?该哈希函数的解决方案是什么?
非常感谢
【问题讨论】:
-
是的,
Hash每次都会给出不同的结果。使用Hash::check($plain, $hashed)进行比较。和答案一样,不要在Auth::attempt方法中使用哈希器 -
Hash::make() 将每次执行时都会给出不同的结果,因为它每次都使用不同的盐......这就是为什么它比使用固定盐进行散列更安全......这就是为什么你也有 Hash::check()
-
@MarkBaker 很好的信息,谢谢
-
@deczo 你的意思和第一个答案一样吗?
标签: php laravel laravel-4 blade