japostulo / middleware-passport
提供中间件以集成到laravel passport进行用户信息检查的包
v1.1.2
2022-12-28 09:05 UTC
Requires
- php: ^8.0.2
This package is auto-updated.
Last update: 2024-09-28 13:30:23 UTC
README
要求
- Laravel >= 8.0
- 具有两个端点的API SSO实现
introspect
- 返回用户信息的端点authenticate
- 仅返回布尔值(异常将被处理)的端点
快速安装
composer require japostulo/middleware-passport
配置
在.env文件中需要添加您的SSO URI
SSO_URL=https://:8000
插件提供了两个中间件,可以用于用户信息检查或仅用于授权访问受保护的端点。需要在app/Http/Kernel.php
文件中注册,例如:
protected $routeMiddleware = [ 'sso.client' => \Japostulo\MiddlewarePassport\Middlewares\ClientAuthenticate::class, 'sso.password' => \Japostulo\MiddlewarePassport\Middlewares\PasswordAuthenticate::class, ];
如果您需要访问用户数据(
Auth::user()
或$request->user()
),则需要使用PasswordAuthenticate中间件,您的app\Models\User.php
类将通过门面返回new User实例
快速测试
routes/api.php
Route::middleware('sso.client')->get('/test-authenticated', function () { return response()->json("I'm authenticated"); }); Route::middleware('sso.password')->get('/test-introspect', function () { return response()->json(Auth::user()); });