有人可以解释吗?
我正在使用Owin Cookie身份验证,在我的方法中,我有以下代码:
e.OwinContext.Authentication.SignIn(/* AuthenticationProperties, ClaimsIdentity */);
e是 CookieValidateIdentityContext
当我在代码中使用此方法时,如果我没有在30分钟之内发送请求,网站就会要求我提供凭据,但是如果我每20分钟发送一次请求(例如),则不会要求我输入凭据
当我没有此方法时,因为ExpireTimeSpan设置为1440分钟,所以系统不会要求我提供1天的凭据。
所以我的问题是:上面的代码内部发生了什么,如果在30分钟内不发送请求,如何防止再次登录。
我正在使用Microsoft.Owin.Sequrity 3.0
链接到Owin方法:public void SignIn行:203
答案 0 :(得分:1)
您可以将过期时间添加到AuthenticationProperties
中,如下所示:
SignIn(new AuthenticationProperties
{
IsPersistent = e.Properties.IsPersistent,
ExpiresUtc = DateTimeOffset.UtcNow.AddMinutes(1440)
}, principal);