leonis/laravel-jwt

Laravel JWT auth.

v1.0.1 2019-06-25 03:36 UTC

This package is auto-updated.

Last update: 2020-06-25 06:11:24 UTC


README

The augmented JWT-Auth.
增强版 jwt-auth ,将 JWT 存储在服务器中,以实现对 JWT 的精确控制。

支持的存储位置

  • Redis:\Leonis\LaravelJWT\Storage\RedisStorage::class
  • Database:\Leonis\LaravelJWT\Storage\DatabaseStorage::class

已实现的 Token 淘汰策略

  • 多平台多设备:multiClientMultiDevice
  • 多平台单设备:multiClientSingleDevice
  • 单平台多设备:singleClientMultiDevice
  • 单平台单设备:multiClientSingleDevice

安装

composer require leonis/laravel-jwt

配置

  1. 发布配置文件
php artisan vendor:publish --provider="Leonis\LaravelJWT\Providers\LaravelJWTServiceProvider" --tag=config
  1. 如果使用数据库存储,需要发布数据库迁移文件
php artisan vendor:publish --provider="Leonis\LaravelJWT\Providers\LaravelJWTServiceProvider" --tag=migrations

使用

使用方法与 jwt-auth 相同。
需要注意的是本插件使用 custom claims 实现平台的标记。
例如:

$claims = ['gua' => 'api', 'cli' => 'android'];
$token = auth()->claims($claims)->attempt($credentials);