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

1
Перекладено ШІ
Оригінал: Laravel News
Оновлено: 17 грудня, 2025
Захист вашого облікового запису в 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

Хочете забезпечити повну прозорість у своїх Laravel-додатках? Пакет Laravel Audit Log допоможе вам детально відстежувати всі зміни моделей Eloquent та відповідати вимогам регуляторів. Читайте далі, щоб дізнатися, як цей потужний інструмент може підвищити надійність вашого проєкту