我正在尝试为现有应用程序添加身份验证,以便公司拥有一个使用纯文本密码存储其用户的表。在 Laravel 中,我知道我可以使用Auth::attempt()
来验证用户身份,但会根据哈希密码检查密码。我该如何检查纯文本密码呢?
答案 0 :(得分:2)
只需使用loginUsingId()
方法手动检查密码并登录用户:
if ($user->password === $request->password) {
auth()->loginUsingId($user->id);
}
我还建议您散列所有密码。存储纯文本密码是一件非常糟糕的事情。做一次这样的事情(例如,在Tinker中):
$users = User::all();
foreach ($users as $user) {
$user->update(['password' => bcrypt($user->password)]);
}