Предоставление учетных данных клиента генерирует токены на всю жизнь - PullRequest
0 голосов
/ 18 марта 2019

Я создаю API в laravel a, используя два гранта [пароль, client_credentials], и я хочу настроить время жизни токена отдельно для обоих грантов.

Если я настрою время жизни токена в соответствии с паспортной документацией laravel , тогда его набор для обоих грантов.

Мне нужна помощь, чтобы настроить отдельное время жизни для обоих грантов.

Ответы [ 2 ]

0 голосов
/ 21 марта 2019

В загрузочной функции вашего AuthServiceProvider вы все равно можете проверить значение grant_type в вашем запросе, чтобы определить другое время жизни.

if($request["grant_type"] === "client_credentials"){
        // If token is a client_credential we define it to one year
        Passport::tokensExpireIn(Carbon::now()->addYear());
    }else{
        // Or we define it to only one hour
        Passport::tokensExpireIn(Carbon::now()->addHour());
    }
0 голосов
/ 20 марта 2019

Создайте токен доступа с $token = $user->createToken('API Access') и используйте запрос с DB::table('oauth_access_tokens')->where('id', $token->id)->update([...]), чтобы вручную изменить значение 'expires_at'.

Применить то же самое к ' oauth_refresh_tokens ' с ->where('access_token_id', $token->id)

...