Управління сесіями на кількох пристроях за допомогою функції виходу з системи в Laravel

2
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 22 березня, 2026
Захист вашого облікового запису в Laravel ніколи не був таким простим! Дізнайтеся, як реалізувати функцію logoutOtherDevices для завершення сесій на всіх пристроях, щоб забезпечити безпеку чутливих даних у вашій аплікації

Laravel має потужну функцію безпеки через Auth::logoutOtherDevices(), що дозволяє користувачам завершувати сеанси на всіх пристроях, окрім поточного. Ця можливість особливо важлива для забезпечення безпеки облікових записів у додатках, які обробляють чутливу інформацію.

Ви можете реалізувати цю функцію як проактивний захід безпеки, наприклад, у відповідь на підозрілі дії:

public function secureSessions(Request $request)
{
    Auth::logoutOtherDevices($request->password);
 
    return back()->with('status', 'Усі інші сеанси завершено');
}

Для правильної обробки сеансів необхідно використовувати middleware auth.session:

Route::middleware(['auth', 'auth.session'])->group(function () {
    // Захищені маршрути
});

Ось приклад реалізації для оновлення пароля з одночасним виходом з пристроїв:

class SecurityController extends Controller
{
    public function updatePassword(Request $request)
    {
        $validated = $request->validate([
            'current_password' => 'required',
            'new_password' => 'required|min:8|confirmed'
        ]);
        
        if (!Hash::check($request->current_password, Auth::user()->password)) {
            return back()->withErrors([
                'current_password' => 'Введено неправильний пароль'
            ]);
        }
        
        Auth::logoutOtherDevices($request->current_password);
        Auth::user()->update([
            'password' => Hash::make($request->new_password)
        ]);
        
        return redirect('/dashboard')
            ->with('status', 'Пароль оновлено, інші пристрої вийшли з системи');
    }
}

Цей підхід надає користувачам більший контроль над безпекою їхніх облікових записів, запобігаючи несанкціонованому доступу через забуті активні сеанси

Популярні

Logomark Logotype

Усе, що нам відомо про Livewire 4

Нова версія Livewire 4, представленої Келебом Порзіо на Laracon US 2025, обіцяє значні покращення у швидкості та організації компонентів. Які з інноваційних функцій підкорять ваше серце? Читайте далі, щоб дізнатися більше про те, як Livewire 4 полегшить вашу роботу

Logomark Logotype

Використання повнотекстового пошуку в Laravel

Laravel пропонує потужні можливості повнотекстового пошуку за допомогою методів whereFullText та orWhereFullText, що дозволяють здійснювати складні запити до бази даних. Дізнайтеся, як реалізувати ефективний пошук для вашого блогу чи системи управління контентом

Logomark Logotype

Все, що потрібно знати про Laravel 13

Laravel 13 вийде в березні 2026 року й вимагатиме мінімум PHP 8.3. Хочете дізнатися, як PHP‑атрибути для моделей, нові налаштування черг і метод Cache::touch() вплинуть на вашу розробку?