我正在使用 OWIN cookie 身份验证中间件,并设置了一个自定义OnValidateIdentity
方法,应该在所有需要进行身份验证的请求上调用该方法。
我的设置如下所示:
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "my-cookie",
Provider = new CookieAuthenticationProvider()
{
OnValidateIdentity = async ctx =>
{
// my own validation code
}
}
}
我遇到的问题是,对于某些请求,OnValidateIdentity
没有调用。如果我多次点击同一个受保护的 Web API 控制器,一些请求将不会调用OnValidateIdentity
-method。
当我需要使用GetOwinContext().Authentication.User
并且ClaimsPrincipal
未填充时,这会导致稍后在处理中出现问题。
这可能是什么原因?