【发布时间】:2020-11-10 00:38:32
【问题描述】:
我有一个 ASP.net MVC Web 应用程序,它使用 Microsoft 的 Owin 中间件 (Microsoft.Owin.Security.OpenIdConnect) 来配置 OpenID Connect 身份验证。我的身份提供者 (Okta) 配置为支持刷新令牌,并且我已确认它正在工作。登录时,我的应用程序按预期收到访问、ID 和刷新令牌。这些令牌经过验证并在名为“.AspNet.Cookies”(默认)的 cookie 中返回给客户端。在每个请求中,cookie 和这些令牌都被解析为一组声明。到目前为止很棒。 ????
Owin (Katana) 中间件似乎没有对刷新令牌做任何进一步的事情,因此我实现了一个令牌客户端,以使用刷新令牌从我的 IdP 请求一个新的访问令牌。这按预期工作。 ????
两个问题:
- 应用程序应在何时何地检查访问令牌是否已过期并请求新的?
- 收到新的访问、ID 和刷新令牌后,应用程序应如何以及在何处更新用户身份、声明和 cookie?
【问题讨论】:
标签: asp.net-mvc owin openid-connect katana