【问题标题】:Laravel 5 Auth: These credentials do not match our recordsLaravel 5 Auth:这些凭据与我们的记录不匹配
【发布时间】:2015-06-09 17:49:03
【问题描述】:

我刚开始使用 Laravel 5,我来自 Laravel 4 环境,所以应该不会太难。

我听说 L5 带有一个整洁的内置身份验证系统。 我已经设置了从数据库到视图的所有内容。

注册过程正常,之后它会自动让我登录。但是当我注销并尝试重新登录时,我收到此错误:

这些凭据与我们的记录不符。

我不确定出了什么问题。我必须手动编写登录控制器还是在 L5 中如何工作?

【问题讨论】:

  • 很可能,您只是输入了错误的密码或电子邮件。尝试重新注册。
  • 您是否正确散列密码? Auth::attempt()期望它被散列。
  • 在我的情况下,我在创建用户并将password 作为$request->password 传递给它时遇到了这个错误,但是在收集的表单名称中 $request 有不同的密码@ 987654324@

标签: php authentication laravel laravel-5


【解决方案1】:

我有同样的问题。我的原因是 我在我的User 模型中定义了setPasswordAttribute,所以每次我输入纯密码,它在发送到数据库之前都会经过哈希处理。

public function setPasswordAttribute($password)
{
    $this->attributes['password'] = \Hash::make($password);
}

在我的 db:seed 中,我也在使用 Hash::make("password") 创建一个带有哈希密码的用户。所以 laravel 散列哈希密码:)

在 laravel 版本 5.* 中,您不需要对 Auth 的输入密码进行哈希处理,因为 Auth 自己管理它。您只需通过表单传递{{csrf_field()}}

【讨论】:

  • 现在 >=5.1 你也可以使用bcrypt($password)
【解决方案2】:

除了 @mervasdayi 解决方案之外,在setPasswordAttribute 中散列密码以避免重新散列问题的好方法可能是:

public function setPasswordAttribute($password){
    $this->attributes['password'] = Hash::needsRehash($password) ? Hash::make($password) : $password;
}

【讨论】:

    【解决方案3】:

    进一步了解@mervasdayi 和 Gerard Reches 的建议。只是想我会记下您需要包含的内容

    use Illuminate\Support\Facades\Hash;
    

    添加这些修复程序时,位于 User 模型的顶部。

    【讨论】:

      【解决方案4】:

      我认为是稍后,但我找到了两种解决方案来解决这个问题。 首先,如果你使用 laravel 5.3,你可以使用 bcrypt 函数。看下面的函数。这意味着您可以在数组中获取数据。

      public function create(array $data)
      {
          return User::create([
              'password' => bcrypt($data['password']),
          ]);
      }
      

      其次,您可以使用 mutator 来修复它:

       public function setPasswordAttribute($password)
      {
          $this->attributes['password'] = \Hash::make($password);
      }
      

      希望它可以帮助别人。最好的问候

      【讨论】:

        猜你喜欢
        • 2018-06-24
        • 1970-01-01
        • 2017-05-14
        • 1970-01-01
        • 2020-06-16
        • 2020-05-24
        • 1970-01-01
        • 2016-06-27
        • 2022-10-04
        相关资源
        最近更新 更多