Laravel 6 — это мощная PHP-инфраструктура, которая предлагает надежные возможности аутентификации «из коробки». Однако, если вы хотите улучшить процесс аутентификации и добавить аутентификацию на основе токенов в свое приложение Laravel 6, Tymon/JWT-Auth — идеальный пакет для вас. В этой статье мы рассмотрим различные методы, предоставляемые Tymon/JWT-Auth для повышения эффективности вашей аутентификации в Laravel 6.
-
Установка:
Прежде всего, давайте установим пакет Tymon/JWT-Auth, выполнив следующую команду в каталоге проекта Laravel 6:composer require tymon/jwt-auth
-
Конфигурация:
После установки пакета его необходимо настроить. Откройте файлconfig/auth.php
и установите драйвер для защитыapi
на'jwt'
:'guards' => [ 'api' => [ 'driver' => 'jwt', 'provider' => 'users', ], ],
-
Генерация токенов.
Tymon/JWT-Auth предоставляет простой способ создания токенов JWT. Вы можете сгенерировать токен для пользователя, используя методattempt()
:if ($token = auth()->attempt($credentials)) { // Token successfully generated }
-
Защита маршрутов.
Чтобы защитить маршруты и разрешить доступ только прошедшим проверку подлинности пользователям, вы можете использовать промежуточное программное обеспечениеauth:api
:Route::group(['middleware' => 'auth:api'], function () { // Protected routes });
-
Получение аутентифицированного пользователя:
Вы можете легко получить аутентифицированного пользователя с помощью методаauth()->user()
:$user = auth()->user();
-
Обновление токена:
Tymon/JWT-Auth позволяет обновить токен, не требуя от пользователя повторного входа в систему. Вы можете использовать методrefresh()
:$newToken = auth()->refresh();
-
Срок действия токена:
По умолчанию токены JWT имеют указанный срок действия. Вы можете настроить срок действия, изменив значениеttl
в файлеconfig/jwt.php
:'ttl' => env('JWT_TTL', 60),
Tymon/JWT-Auth — это фантастический пакет, который расширяет возможности аутентификации Laravel 6, обеспечивая аутентификацию на основе токенов. В этой статье мы рассмотрели различные методы, предоставляемые Tymon/JWT-Auth, включая генерацию токенов, защиту маршрутов, извлечение пользователей, обновление токенов и настройку срока действия токенов. Используя эти методы, вы можете повысить безопасность и гибкость системы аутентификации вашего приложения Laravel 6.