小编Mac*_*Mac的帖子

Lumen框架中的多个auth警卫

请问,任何人都可以解释如何在Lumen框架中实现多个身份验证保护?目前,我有两个可验证的模型:用户客户端.我正在使用JWT的自定义实现.用户在其令牌有效负载中具有client_iduser_id字段.虽然客户只有client_id.基于此,我需要确定谁来找我:客户,用户或客人(没有代币).

auth.php

'guards' => [
    'client' => [
        'driver' => 'token',
        'provider' => 'clients',
    ],
    'user' => [
        'driver' => 'token',
        'provider' => 'users',
    ],
],

'providers' => [
    'clients' => [
        'driver' => 'eloquent',
        'model' => App\Client::class,
    ],
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
    ],
],
Run Code Online (Sandbox Code Playgroud)

AuthServiceProvider.php

public function boot()
{
    $this->app['auth']->viaRequest('token', function ($request) {
        $access_token = HelperClass::getTokenFromHeader($request->headers->get('Authorization'));

        if ($access_token) {
            $tokendata = JWT::decode($access_token, getenv('TOKEN_SECRET'), array('HS256')); …
Run Code Online (Sandbox Code Playgroud)

authentication laravel lumen lumen-5.2

5
推荐指数
0
解决办法
1465
查看次数

标签 统计

authentication ×1

laravel ×1

lumen ×1

lumen-5.2 ×1