Laravel Auth ::尝试假设单独的密码表

时间:2017-04-18 04:53:48

标签: php laravel authentication

我正在分别存储我的User表和Password表。如果用户不小心将password参数放在$visible变量User中,则可以避免意外泄漏散列密码。我不确定这是过度的还是无根据的,但这是我的理由。

那就是说,无论如何要告诉Auth::attempt密码存储在另一个表中,并且在访问散列密码之前需要加入?

从教程中,登录很简单,假设在User表中找到了密码字段

if (Auth::attempt(['email' => $email, 'password' => $password])) {
    // Blah
}

由于我是Laravel的新手,我已经环顾四周,找不到任何人在Laravel中使用单独的哈希密码表,所以我不确定它是否受支持。

1 个答案:

答案 0 :(得分:0)

在幕后,attempt()方法使用一个表来获取凭据。您可以将users表更改为其他表,但不能将密码保存在单独的表中。因此,在这种情况下,您需要创建自己的attempt()方法。

public function customAttempt()
{
    // Get password and hashed password.

    // Verify password.
    return password_verify($value, $hashedValue)
}