Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
4.0k views
in Technique[技术] by (71.8m points)

authentication - can't use Laravel Logoutotherdevices function

I have following function in User.php model:

public function setPasswordAttribute($value)
{
    $this->attributes['password'] = bcrypt($value);
}

My Login function in UserController.php:

public function loginFunction(Request $request)
{

    $authenticate = Auth::attempt([
        'email' => $request->input('email'),
        'password' => $request->input('password')
    ], $request->has('remember'));

    if ($authenticate) {
        Auth::logoutOtherDevices($request->input('password'));
        return redirect()->route('frontend.index')->with('success', 'Logged');
    } else {
        return redirect()->back()->with('error', 'Error');
    }

}

In kernel.php, I uncomment this line :

IlluminateSessionMiddlewareAuthenticateSession::class,

Problem is: when a user login to his/her account all passwords on every rows in database change.
How I can handle this?
Does anyone have another idea to prevent multiple people from using the same account at the same time?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
等待大神答复

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...