我在过期后撤销“刷新令牌”时遇到问题。我有一个标准表“OpenIddict Tokens”,其中openiddict存储令牌。在我配置OpenIddict的Startup类中,我设置了:
.SetRefreshTokenLifetime(TimeSpan.FromSeconds(1)) // It is just for check revocation of token
从/connect/token
收到令牌后,我立即尝试刷新我的令牌。我得到“指定的刷新令牌不再有效”错误,我注意到在数据库中仍然有关于过期刷新令牌的注释。
它应该留在那里还是应该从数据库中删除?
答案 0 :(得分:0)
只能使用access token
刷新refresh token
。在实践中,刷新令牌是长期存在的,因为它表示资源所有者授予客户端的授权。过期/黑名单刷新令牌意味着客户端访问被撤销。
换句话说,如果客户端已过期刷新令牌,则必须再次进行身份验证并接收一对新的访问/刷新令牌以访问资源。