Заблокировать одновременный вход в Laravel - jetstream

Я создаю это приложение laravel с помощью jetsream, и оно работает как часы. (Я не разработчик, я просто смотрю видео на YouTube и пытаюсь построить то, что хочу)

Я хочу предотвратить одновременный вход в систему с одной и той же учетной записи. Я видел то, что, по моему мнению, является решением здесь: ">php laravel предотвращает многократный вход пользователя с разных устройств/вкладок браузера в заданное время. Но я не уверен, как это реализовать.

Для начала, решение по приведенной выше ссылке говорит проверить и убедиться, что следующий код присутствует в app/Http/Kernel.php

Illuminate\Session\Middleware\AuthenticateSession

Я проверил свой файл Kernel.php и нашел эту строку.

\Laravel\Jetstream\Http\Middleware\AuthenticateSession

Это та линия, которая мне нужна? Это отличается, потому что я использую jetstream?

Затем в решении говорилось использовать код следующим образом:

 use Illuminate\Support\Facades\Auth;
 Auth::logoutOtherDevices($password);

Где я могу его использовать? Куда мне вставить этот код?

Примечание: я нашел несколько статей о том, как добиться того, чего я хочу, но они слишком продвинуты для меня.

Я застрял на этом последние 2 часа. Может ли кто-нибудь помочь мне разобраться с этим.

С Уважением


person Rodrigue    schedule 16.06.2021    source источник


Ответы (1)


Да, в вашем файле kernel.php вы нашли

\Laravel\Jetstream\Http\Middleware\AuthenticateSession this is because 

вы используете jetstream, поэтому здесь вы увидите группу веб-промежуточного программного обеспечения, которую вам нужно раскомментировать

'web' = 
[\Laravel\Jetstream\Http\Middleware\AuthenticateSession::class, ]
and then 
protected function authenticated(Request $request)
{$password = $request->password ;         
Auth::logoutOtherDevices($password);}

Если это не поможет вам, вам нужно написать собственный код в вашем

LoginController.php для предотвращения множественных входов в систему.

person Suraj Saybu Dhotre    schedule 16.06.2021
comment
В сгенерированных файлах нет LoginController.php. - person Rodrigue; 17.06.2021
comment
хороший. это сработало для меня - person Arinzehills; 23.07.2021