客户端凭据授予会终身生成令牌

时间:2019-03-18 17:03:46

标签: oauth-2.0 laravel-passport laravel-5.8

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

如果我根据laravel passport documentation配置令牌生存期,则这两个授予的令牌生存期都设置了。

我需要帮助来为这两项赠款配置单独的生存期。

2 个答案:

答案 0 :(得分:0)

使用$token = $user->createToken('API Access')创建访问令牌,并使用DB::table('oauth_access_tokens')->where('id', $token->id)->update([...])进行查询以手动更改'expires_at'的值。

->where('access_token_id', $token->id)

应用于“ oauth_refresh_tokens

答案 1 :(得分: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());
    }
相关问题