taneryener / laravel-jwt-validate
0.0.2
2023-03-14 04:35 UTC
Requires
- illuminate/auth: 5.7.* | 5.8.* | ^6.0 | ^7.0 | ^8.0 | ^9.0
- illuminate/support: 5.7.* | 5.8.* | ^6.0 | ^7.0 | ^8.0 | ^9.0
- lcobucci/jwt: ^4.3.0
Requires (Dev)
- phpunit/phpunit: ^7.0
This package is not auto-updated.
Last update: 2024-09-24 11:31:24 UTC
README
本包旨在用于具有多个Laravel应用程序协同工作的架构中,其中一个应用程序使用通过非对称加密算法(目前为RS256)生成的密钥签发JWT。这主要是为了在服务导向架构中使用Laravel Passport令牌,其中可能只有Auth服务能够访问所有认证数据。
JWT Validate将使用您主安装的公钥检查传入认证令牌的完整性。它还将使用您JWT中编码的数据填充用户模型,并通过常规的Auth::user()
使其可用。
请注意,Passport Validate不应在已使用Laravel Passport的项目中使用。此包仅适用于可能无法访问OAuth私钥、Passport数据库表或其他Laravel Passport所需元素的应用程序。
安装
通过Composer安装
composer require jobilla/laravel-jwt-validate
添加认证配置
要启用保护器,请将以下内容添加到您的config/auth.php
<?php return [ // ... 'guards' => [ // ... 'jwt' => [ 'driver' => 'jwt-validate', 'public_key_path' => storage_path('oauth-public.key'), 'hydrator' => function (array $claims, \Illuminate\Http\Request $request) { return new App\User(['id' => $claims['sub']]); }, ] ] ];
您可以选择使用此作为默认保护器,并可能用此替换默认的api
保护器。