У меня есть секретный маршрут в Laravel, который должен находиться за защитой подтверждения пароля (например, режим GitHub sudo, когда вы собираетесь удалить репо или добавить соавтора)
Route::get('/secret', 'DiariesController@index')->middleware(['auth', 'verified']);
Но уже аутентифицированные пользователилегко получить доступ к маршрутам
Мне нужен дополнительный уровень защиты от физического доступа к устройству пользователя
Вот что я пробовал до сих пор
DiariesController
public function index()
{
if (session()->has('sudo')) {
return view('secret.diaries');
}
auth()->logout();
return redirect('/login');
}
А в LoginController
/**
* The user has been authenticated.
*
* @param \Illuminate\Http\Request $request
* @param mixed $user
* @return mixed
*/
protected function authenticated(Request $request, $user)
{
session(['sudo' => true]);
}
Но это в принципе ничего не дает, мне нужно как-то вручную истечь сеансовый ключ sudo
Есть ли прощеспособ достичь этого?