gpt4 book ai didi

c# - AspNet.Security.OpenIdConnect.Server。刷新 token

转载 作者:太空狗 更新时间:2023-10-30 01:16:17 25 4
gpt4 key购买 nike

据我所知,ASOS 支持开箱即用的刷新 token 。要获取刷新 token ,我需要将 offline_access 范围添加到我的 token 请求中。但是它们存储在哪里?如何更改 token 的到期日期或将其删除?如何确定为哪个用户创建刷新 token ?

最佳答案

But where are they stored?

默认情况下,它们无处存储:它们是独立的。只要用于保护刷新 token 的加密 key 仍在 ASP.NET 数据保护 key 环中,它们就可以被 ASOS 解密并用于颁发新的访问 token 。


How can I change expiration date of the token?

可以使用 RefreshTokenLifetime 属性从选项中全局设置默认到期日期。如果您不提供自己的生命周期,它们的有效期为 14 天。

请注意,滑动到期也默认启用,这意味着您每次发出新的 grant_type=refresh_token 请求时都会获得一个新的刷新 token (有效期为 14 天)。您可以通过将 UseSlidingExpiration 设置为 false 来禁用滑动过期。


... or delete it?

由于刷新 token 是独立的,因此您无法删除它们。您当然可以考虑通过覆盖 SerializeRefreshTokenDeserializeRefreshToken 事件来使用自定义 token (例如与数据库中的条目相对应的唯一字符串),但推荐的方法是简单地处理它们在收到刷新 token 请求时无效。

为此,如果您认为 refresh_token 已被撤销并且不能用于发行新代币。


How can I determine for which user refresh token is created?

刷新 token 包含您在创建原始身份验证票证时添加的所有声明,因此如果您添加与用户标识符对应的sub声明,您可以使用它来从数据库中检索用户配置文件。

关于c# - AspNet.Security.OpenIdConnect.Server。刷新 token ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35741269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com