1

我跟着这个http://laravel.com/docs/4.2/security#authenticating-users

完成了我的表格,

当我尝试进行身份验证时,它总是失败,

我使用默认的用户模型和 auth.php 的用户表以及文档中的建议内容。我是否应该做任何超出它的事情。

  $email = Input::get('email');
  $password = Input::get('password');       
  if (Auth::attempt(array('email' => $email, 'password' => $password)))
    {
        return Redirect::intended('dashboard');
    }
4

1 回答 1

1

您存储在表中的密码必须是散列值。Laravel 需要它。但这甚至不应该是主要原因。密码需要经过哈希处理,因此没有人可以找出实际密码是什么。如果您认为您的数据库服务器是安全的并且没有人会获得访问权限,这并不重要。您的数据库总是有可能遭到破坏,在这种情况下,您不想保护用户密码。

在 Security Stack Exchange 上查看此问题以获取有关该主题的更多信息。

现在,这是获取密码哈希版本的快速方法。(没有注册表,显然需要这样做)。将此添加到routes.php

Route::get('hash/{value}', function($value){
    return Hash::make($value);
});

打开 url/hash/your-password并将此字符串复制到password数据库中的字段中。

于 2014-12-26T19:39:59.953 回答