gpt4 book ai didi

c# - Asp.Net 5. Jwt token 撤销

转载 作者:行者123 更新时间:2023-11-30 16:49:56 25 4
gpt4 key购买 nike

我在我的应用程序中使用 jwt token 中间件和 Asp.Net.OpenIdConnect.Server。事实上,它工作正常。但是我对一件事感到困惑。如果我使用 token ,我不能立即授予新声明或禁止我的用户。例如。我给我的用户访问 token (有效期为 2 天)和刷新 token (有效期为 2 周)。然后我给这个用户管理员权限。但是他只会在 2 天后知道这一点,当他当前的访问 token 到期时,auth 服务器将使用刷新 token 给他新的 token 。我怎样才能在下一次请求时立即给他新的权限?

我明白,我需要为每个请求检查数据库,并在需要时为用户提供新的访问 token 。但是我应该在 aspnet 5 的什么地方做呢?也许对于这样的事情有一些好的做法?

最佳答案

一种方法是将唯一标识符放入您的声明中,您可以查询它是否仍然有效。你可以使用内存缓存来存储它或者一些分布式内存缓存比如Redis,这样就不用每次都去打数据库了。

当您禁止用户或添加 token 时,您通过从缓存中删除该 token 将其标记为无效。每次用户刷新 token 时,您都应该在 token 内创建一个新的唯一 ID。

关于c# - Asp.Net 5. Jwt token 撤销,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35763932/

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