0

我正在使用两个授权 [password, client_credentials] 在 laravel a 中创建一个 API,并且我想为两个授权分别配置令牌生命周期。

如果我根据laravel 护照文档配置令牌生命周期,那么它的集合适用于两个授权。

我需要帮助来为两个授权配置单独的生命周期。

4

2 回答 2

0

创建访问令牌$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)

于 2019-03-20T08:55:09.730 回答
0

在 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());
    }
于 2019-03-21T16:59:49.020 回答