PHPackages                             idoleg/jwt-auth - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. idoleg/jwt-auth

ActiveLibrary

idoleg/jwt-auth
===============

JWT Auth Guard for Laravel

057PHP

Since Sep 4Pushed 7y ago1 watchersCompare

[ Source](https://github.com/idoleg/jwt-auth)[ Packagist](https://packagist.org/packages/idoleg/jwt-auth)[ RSS](/packages/idoleg-jwt-auth/feed)WikiDiscussions master Synced 2mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

JWT guard
---------

[](#jwt-guard)

#### Конфигурация

[](#конфигурация)

**config/auth.php**

```
['guards' => [
        'api' => [  // название вашего защитника, можете указать любое, главное что бы оно же было в секции "defaults"
            'driver' => 'jwt', // обязательно укажите название драйвера "jwt"
            'provider' => 'users', // провайдер, название секции из "providers"
            'config' => [
                'authToken' => [
                    'verifyKey' => env('JWT_AUTH_KEY'), // ключ, которым будут подписыватся токены авторизации
                    'life' => 2592000, // время жизни токенов авторизации
                ],
                'guest' => [ // в этой секции возможно указать Eloquent Model и ее ID, она будет возвращаться, когда никакой пользователь не авторизован в системе. Если здесь указано false, будет возвращаться null (как стандартно в Laravel)
                    'id' => 1,
                    'model' => App\Models\User::class,
                ],
            ]
        ],
    ]
]
```

#### Методы

[](#методы)

1. **login($user)** - авторизровать пользователя по его Eloquent Model
2. **loginByCredentials($credentials)** - аутентифицировать пользователя на основе его учетных данных
3. **loginByToken($token)** - авторизовать пользователя на основе auth token
4. **loginByRequest($request = null)** - авторизовать пользователя на основе заголовка Authorization в запросе. Если не передан аргумент $request, проверка идет для текущего запроса
5. **createAuthToken($user = null)** - выписать токен авторизации для пользователя. Если не указан $user, токен выписывается для авторизованногов системе пользователя

#### Guest

[](#guest)

Если в конфигурации указана секция "guest", то в случае, если ни один пользователь не авторизован в системе, будет возвращаться не null при попытке его получить, а указанная в этой секции Eloquent Model.

EloquentTokenUser Provider
--------------------------

[](#eloquenttokenuser-provider)

2 таблицы (модели)

1. user - для хранения пользователей
2. user\_tokens - для хранения токенов, по которым пользователи могут аутентифироваться в длительной перспективе

#### Поля в таблице user\_tokens

[](#поля-в-таблице-user_tokens)

```
    $table->increments('id');

    $table->unsignedInteger('user_id');

    $table->string('unique_token', 100);
    $table->ipAddress('user_ip')->nullable();

    $table->string('type', 32)->nullable();
    $table->string('agent', 256)->nullable();

    $table->timestamp('logged_at');
```

#### Конфигурация

[](#конфигурация-1)

**config/auth.php**

```
 ['providers' => [
        'users' => [  // название вашего провайдера, можете указать любое, главное что бы оно же было в секции "guards"
            'driver' => 'eloquent-tokens', // обязательно укажите название драйвера "eloquent-tokens"
            'models' => [
                'user' => App\Models\User::class, // модель, в которой хрянятся пользоавтели
                'token' => App\Models\UserToken::class, // модель, в которой хрянятся токены пользователей
            ],
        ],
    ],
]
```

###  Health Score

20

—

LowBetter than 14% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity40

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/1d50dbe7608cf461642157980feff6e1dbde8e23003bb15c31473bd1d044d62e?d=identicon)[idoleg](/maintainers/idoleg)

---

Top Contributors

[![idoleg](https://avatars.githubusercontent.com/u/13756923?v=4)](https://github.com/idoleg "idoleg (17 commits)")

### Embed Badge

![Health badge](/badges/idoleg-jwt-auth/health.svg)

```
[![Health](https://phpackages.com/badges/idoleg-jwt-auth/health.svg)](https://phpackages.com/packages/idoleg-jwt-auth)
```

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
