我想在具有单个用户帐户的基本MVC项目中对cookie使用默认的身份验证过程,但是我非常难以入门。我想使用“记住我”选项,但是无论我是否在登录表单中选中或取消选中“记住我”选项,都行不通。
在Startup.Auth.cs中,我看到以下cookie
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login"),
Provider = new CookieAuthenticationProvider
{
// Enables the application to validate the security stamp when the user logs in.
// This is a security feature which is used when you change a password or add an external login to your account.
OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
validateInterval: TimeSpan.FromMinutes(30),
regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
}
//SlidingExpiration = true,
// ExpireTimeSpan = TimeSpan.FromMinutes(30)
});
如何在此处发送参数以检查用户是否已选中“记住我”选项,因为这样我将使用不同的到期时间。还有什么方法可以查看SignInAsync的实际实现,因为我认为我应该重写该方法,但是(对我而言)没有任何实现很难保持至少相同的功能并添加RememberMe的功能。
旁注:我知道这个地方不是您应该问“如何”一词的地方,但是我需要一些指导,感谢您的理解。