sonata / jwt-auth
JWT auth module for Sonata framework
Installs: 2
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/sonata/jwt-auth
Requires
- php: ^8.3
- ext-pdo: *
- firebase/php-jwt: ^7.0
- sonata/framework: ^1.0
This package is auto-updated.
Last update: 2026-02-07 08:54:55 UTC
README
JWT-модуль для Sonata Framework: авторизация, refresh-токены и базовая таблица пользователей.
Установка
composer require sonata/jwt-auth
Требования
sonata/frameworkfirebase/php-jwtext-pdo- Переменная
JWT_SECRET
Миграции
Модуль использует таблицы users и refresh_tokens.
Если в приложении доступна команда:
php bin/console jwt:install
Или выполните SQL вручную из файла:
migrations/001_create_users_and_refresh_tokens.sql
Эндпоинты
Контроллер Sonata\JwtAuth\Controllers\AuthController регистрируется автоматически:
POST /api/login— логин (email, password)POST /api/registration— регистрацияPOST /api/refresh— обновление токенаPOST /api/logout— логаутGET /api/me— профиль по access token
Пример логина:
POST /api/login Content-Type: application/json { "email": "user@example.com", "password": "password123" }
Ответ:
{
"access_token": "...",
"refresh_token": "...",
"token_type": "Bearer",
"expires_in": 900
}
Логика
- Login: проверяет
password_hash, выдает access + refresh токены. - Refresh: хранит хэш refresh-токена в
refresh_tokens, отзывает старый при обновлении. - Logout: отзывает все refresh-токены пользователя.
- Me: читает
Authorization: Bearer <token>и валидирует JWT.
Переменные окружения
JWT_SECRET— ключ подписи JWT.