Laravel Passport为每个设备ID创建多个访问令牌 [英] Laravel Passport create multiple access token to each device id
本文介绍了Laravel Passport为每个设备ID创建多个访问令牌的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的项目允许多个设备登录到同一帐户。我能够通过调用OAuth/令牌端点来生成访问令牌和刷新令牌。现在的问题是我想为一个设备ID设置一个令牌。
我创建了一个终结点:域.com/用户/登录
现在,当我用设备A调用登录时,它将生成访问令牌和使用新记录刷新令牌,并且由于某些问题,设备A强制重定向用户再次登录,此时我将生成新访问令牌和使用新记录刷新令牌。
现在,我在设备A中有两个有效的访问令牌。那么,我可以做些什么来吊销设备A的第一个访问令牌,而不是吊销用户的所有帐户访问令牌。
推荐答案
您可以在文档中找到有关如何撤销访问令牌的详细信息(https://laravel.com/docs/8.x/passport#revoking-tokens)
摘自文档(Laravel 8):
$tokenRepository = app('LaravelPassportTokenRepository');
$refreshTokenRepository = app('LaravelPassportRefreshTokenRepository');
// Revoke an access token...
$tokenRepository->revokeAccessToken($tokenId);
// Revoke all of the token's refresh tokens...
$refreshTokenRepository->revokeRefreshTokensByAccessTokenId($tokenId);
这篇关于Laravel Passport为每个设备ID创建多个访问令牌的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文