mobieve / auth-client
此包提供了由 Mobieve 制作的认证客户端类。
v2.2.1
2020-06-04 13:47 UTC
Requires
- php: ^7.1.3
- guzzlehttp/guzzle: ^6.5.0
- illuminate/support: ^6.0
- symfony/http-kernel: ^4.4.1
- symfony/psr-http-message-bridge: ^2.0
- tymon/jwt-auth: ^1.0.0-rc-5
README
Mobieve Auth Client PHP
此包提供了由 Mobieve 制作的认证客户端类。
- Mobieve\AuthClient\Facades\CustomClient
- Mobieve\AuthClient\Middleware\MobieveAuthMiddleware
- Mobieve\AuthClient\Models\CustomClient
- Mobieve\AuthClient\Providers\CustomClientServiceProvider
Mobieve 自定义 HTTP 客户端
配置
在 config/app.php 中包含
'providers' => [ ... Mobieve\AuthClient\Providers\CustomClientServiceProvider::class ],
和
'aliases' => [ ... 'JWTFactory' => Tymon\JWTAuth\Facades\JWTFactory::class, 'JWTAuth' => Tymon\JWTAuth\Facades\JWTAuth::class, 'MobieveClient' => Mobieve\AuthClient\Facades\CustomClient::class ],
如果需要用户请求,您还需要包含
'aliases' => [ ... 'Auth' => Illuminate\Support\Facades\Auth::class, 'User' => App\User::class, 'Team' => App\Team::class ],
您还需要在 config/services.php 中配置认证服务信息,例如
return [ ... 'auth' => [ 'url' => env('MOBIEVE_AUTH_URL') . '/oauth/token', 'client_id' => env('MOBIEVE_AUTH_CLIENT_ID'), 'client_secret' => env('MOBIEVE_AUTH_CLIENT_SECRET') ] ];
并将您个人的 MOBIEVE_AUTH_CLIENT_ID 和 MOBIEVE_AUTH_CLIENT_SECRET 包含在您的环境变量中。
用法
MobieveClient::get(string $url, array $params); MobieveClient::post(string $url, array $params); MobieveClient::put(string $url, array $params); MobieveClient::delete(string $url);
中间件
有四个不同的中间件类可供使用。
MobieveClientAuthMiddleware 用于确保请求者是已在 Mobieve 认证服务器中注册的客户端。
MobieveUserAuthMiddleware,另一方面,用于确保请求者是已在 Mobieve 认证服务器中注册的用户。
MobieveUserTeamAuthMiddleware,用于确保请求是由在 Mobieve 认证服务器中注册的团队用户发起的。
MobieveAuthMiddleware,将仅检查令牌是否有效。
要使用 Mobieve 中间件层来检查传入请求的授权,请在 Http/Kernel.php 中包含以下行
您需要在 Http/Kernel.php 文件中包含您想要使用的中间件,如下所示
protected $routeMiddleware = [ ... 'mobieve.auth-client' => \Mobieve\AuthClient\Middleware\MovieveClientAuthMiddleware::class, 'mobieve.auth-user' => \Mobieve\AuthClient\Middleware\MovieveClientAuthMiddleware::class ];
并将 'mobieve.auth-client' 或 'mobieve.auth-user' 添加到您需要保护的所有路由中,根据所需的操作行为。