【问题标题】:Authentication expiry with OpenIDConnect with AADOpenIDConnect 与 AAD 的身份验证到期
【发布时间】:2020-10-14 19:22:18
【问题描述】:
我正在使用 OpenIDConnect Owin、Azure AD microsoft 登录对我的用户进行身份验证。
我想知道在用户使用 Microsoft 登录后,使用 Owin 中间件的 Request.IsAuthenticated 将在多长时间内返回 true。
这是否与 ID-token 的到期时间有关?如果是这样,我可以以某种方式更改过期时间吗?
【问题讨论】:
标签:
asp.net-mvc
authentication
azure-active-directory
owin
openid-connect
【解决方案1】:
Request.IsAuthenticated无论使用何种身份验证(Windows、Passport、Forms 或我们自己的自定义方案)都有效,并且不链接到 id 令牌。成功登录后为 true
要更改身份验证的到期时间,
Azure AD 为我们提供了一个refresh token,当我们的访问令牌(不是 id 令牌)即将到期时,即当我们向 AAD 请求新令牌并提供此刷新令牌时, AAD 会在不要求用户重新认证的情况下给我们一个新的令牌。
此外,从技术上讲,没有指定的方法可以使用刷新令牌“刷新”ID 令牌。因此,获取新 ID Token 的唯一方法是通过将用户重定向到授权端点来重新授权/验证用户