Усовершенствуйте свою аутентификацию Laravel 6 с помощью Tymon/JWT-Auth

Laravel 6 — это мощная PHP-инфраструктура, которая предлагает надежные возможности аутентификации «из коробки». Однако, если вы хотите улучшить процесс аутентификации и добавить аутентификацию на основе токенов в свое приложение Laravel 6, Tymon/JWT-Auth — идеальный пакет для вас. В этой статье мы рассмотрим различные методы, предоставляемые Tymon/JWT-Auth для повышения эффективности вашей аутентификации в Laravel 6.

  1. Установка:
    Прежде всего, давайте установим пакет Tymon/JWT-Auth, выполнив следующую команду в каталоге проекта Laravel 6:

    composer require tymon/jwt-auth
  2. Конфигурация:
    После установки пакета его необходимо настроить. Откройте файл config/auth.phpи установите драйвер для защиты apiна 'jwt':

    'guards' => [
    'api' => [
        'driver' => 'jwt',
        'provider' => 'users',
    ],
    ],
  3. Генерация токенов.
    Tymon/JWT-Auth предоставляет простой способ создания токенов JWT. Вы можете сгенерировать токен для пользователя, используя метод attempt():

    if ($token = auth()->attempt($credentials)) {
    // Token successfully generated
    }
  4. Защита маршрутов.
    Чтобы защитить маршруты и разрешить доступ только прошедшим проверку подлинности пользователям, вы можете использовать промежуточное программное обеспечение auth:api:

    Route::group(['middleware' => 'auth:api'], function () {
    // Protected routes
    });
  5. Получение аутентифицированного пользователя:
    Вы можете легко получить аутентифицированного пользователя с помощью метода auth()->user():

    $user = auth()->user();
  6. Обновление токена:
    Tymon/JWT-Auth позволяет обновить токен, не требуя от пользователя повторного входа в систему. Вы можете использовать метод refresh():

    $newToken = auth()->refresh();
  7. Срок действия токена:
    По умолчанию токены JWT имеют указанный срок действия. Вы можете настроить срок действия, изменив значение ttlв файле config/jwt.php:

    'ttl' => env('JWT_TTL', 60),

Tymon/JWT-Auth — это фантастический пакет, который расширяет возможности аутентификации Laravel 6, обеспечивая аутентификацию на основе токенов. В этой статье мы рассмотрели различные методы, предоставляемые Tymon/JWT-Auth, включая генерацию токенов, защиту маршрутов, извлечение пользователей, обновление токенов и настройку срока действия токенов. Используя эти методы, вы можете повысить безопасность и гибкость системы аутентификации вашего приложения Laravel 6.