我正在使用ASP.NET Core Web API应用程序。我正在尝试在ASP.NET Identity(内置于数据库表中)之上实现基于Jwt Token的身份验证。
我已经实现了所有的场景,比如注册用户、登录等,但是现在正在尝试实现刷新令牌流程(当访问令牌过期时,客户端需要使用刷新令牌来获取替换后的访问令牌)。我看到有人创建新的表(refreshToken)来存储刷新令牌,以便可以与访问令牌进行验证,并生成新的访问和刷新令牌。
https://www.blinkingcaret.com/2018/05/30/refresh-tokens-in-asp-net-core-web-api/
我已经创建了一个新的表(refreshToken)来存储刷新令牌并通过验证生成访问令牌,它能正常工作,但我想知道是否可以使用现有的AspNetUserTokens表来处理同样的情况。我知道AspNetUserTokens表用于确认电子邮件、忘记密码等。
我的问题是:如果有人使用AspNetUserTokens来存储refreshtoken,请分享想法,因为usermanager类不直接暴露token模型(AspNetUserTokens),而且我不确定如果我使用IdentityDbContext,它的优缺点是什么? 我已经实现了IdentityDbContext,但我没有看到Microsoft.AspNetCore.Identity中内置的类可以在AspNetUserTokens中存储token。
非常感谢您提供一些指导。
谢谢