asp.net-web-api – 刷新令牌 – 服务器端存储和撤销多个客户端
我正在使用ASOS(AspNet.Security.OpenIdConnect.Server)框架开始基于令牌的身份验证.
我已经完成了访问令牌的生成和检索,现在我正在转向刷新令牌位. 我的问题是: >我应该如何存储刷新令牌服务器端? >我是否应该将clientID和散列和盐渍刷新令牌存储在数据库中(以及实用程序字段,例如到期日期)? >如果我的API用户具有单个clientID和机密,但同时执行多个调用(假设他们希望在多台计算机上扩展客户端以获得更好的吞吐量),那么预期的行为是什么? >具体来说,我的意思是如果客户端的一个访问令牌过期,但他们的刷新令牌也已过期? 另外,撤销刷新令牌的常见过程是什么? 谢谢. 解决方法
我建议的方法是使用ASOS附加的票证标识符来创建它的所有令牌.您可以通过context.Ticket.GetTokenId()和context.Ticket.ExpiresUtc从SerializeRefreshToken事件中检索刷新令牌标识符和到期日期. 注意:默认标识符是GUID,但您可以使用context.Ticket.SetTokenId(“标记标识符”)替换它.
这实际上取决于您的应用程序要求以及如何实现它.您可以将刷新令牌视为完全独立,或者相反,相互依赖.这个逻辑通常会发生在HandleTokenRequest中.
如果您使用默认令牌格式(超过推荐值),刷新令牌将被视为有效,直到它们过期.您可以通过进行数据库查找来检查令牌是否已从HandleTokenRequest中撤消(您可以使用context.Ticket.GetTokenId()获取刷新令牌标识符) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net – 在遇到性能问题之前,一个azure实例上有多少用户
- asp.net Core使用EF Core自动生成博客/帖子的创建日期
- asp.net-mvc – 尝试方法… HttpConfiguration …访问方法…
- ASP.NET MVC 1是否与ASP.NET MVC 2兼容?
- Asp.net Web API:控制器上未找到任何操作
- 拆分/模块化大型ASP.NET Web应用程序项目
- 配置 – 升级到ASP.NET 4.5后出现404错误
- asp.net-mvc – 自定义异常过滤器在asp.net MVC中没有被击中
- asp.net – 如何为ValidateAntiForgeryToken选择一个盐值
- ASP.NET中TextBox控件设立ReadOnly="true"后台取不
- asp.net mvc调试器抛出SEHException
- asp.net – 用于创建事件处理程序存根的Visual S
- asp.net-mvc-3 – 内部模型的自定义模型绑定器
- asp.net-mvc-3 – ASP.NET Web API问题 – 授权/
- asp.net-mvc – 具有多个参数的ActionLink
- 谈谈分布式事务之三: System.Transactions事务详
- 为ASP.Net Core Weblistener安装SSL证书
- 调试 ASP.NET Core 2.0 源代码
- ASP.NET MVC:访问日志
- asp.net – 调用SqlMembershipProvider GetUser的