Изучение аутентификации API с помощью Sanctum Laravel: подробное руководство

«Sanctum Laravel» относится к Laravel Sanctum, популярному пакету в среде Laravel, используемому для аутентификации API. Laravel – это веб-фреймворк PHP, известный своей элегантностью и простотой, а Sanctum предоставляет простой способ аутентификации API с помощью токенов.

В этой статье блога я расскажу о нескольких методах с примерами кода для работы с Sanctum Laravel.

  1. Установка и настройка:
    Чтобы начать использовать Sanctum в приложении Laravel, вам необходимо установить пакет и настроить его. Вот шаги:
composer require laravel/sanctum
php artisan vendor:publish --provider="Laravel\Sanctum\SanctumServiceProvider"
php artisan migrate
  1. Создание токенов API:
    Sanctum позволяет создавать токены API для пользователей. Вот пример создания токена для пользователя:
use App\Models\User;
use Laravel\Sanctum\Sanctum;
$user = User::find(1);
$token = $user->createToken('token-name')->plainTextToken;
  1. Аутентификация запросов API.
    Для аутентификации запросов API с помощью Sanctum вы можете использовать промежуточное программное обеспечение auth:sanctum. Вот пример защиты маршрута с помощью аутентификации Sanctum:
Route::middleware('auth:sanctum')->get('/api/user', function (Request $request) {
    return $request->user();
});
  1. Защита CSRF для SPA:
    Если вы создаете одностраничное приложение (SPA), использующее API Laravel, Sanctum обеспечивает защиту CSRF. Вот пример настройки защиты CSRF для SPA:
// In your config/sanctum.php file
'stateful' => explode(',', env('SANCTUM_STATEFUL_DOMAINS', 'localhost,127.0.0.1')),
  1. Отзыв токенов:
    Sanctum позволяет отзывать токены пользователя. Вот пример отзыва токена:
use Laravel\Sanctum\HasApiTokens;
$user = User::find(1);
$user->tokens()->delete();

Это всего лишь несколько методов и примеров использования Sanctum Laravel. Пакет предоставляет множество дополнительных функций и возможностей для аутентификации API.