MVC身份|| 禁用所有cookie并"记住我"选项?

Ron*_*Ron 5 asp.net asp.net-mvc asp.net-identity

我正在使用MVC 4和身份2.0,我在我的网站(开箱即用功能)"记住我",我想禁用此选项,并在我的网站中有这两个选项之一:

1.用户每次使用我的网站时都需要登录(输入用户名和密码).

2.user每次都需要登录,网站会记住他30分钟并且不会强迫他在该时间段内登录(在我们的情况下为30分钟).

我怎样才能完成这3件事?

禁用我只是注释登录页面中的复选框我认为它会做的伎俩:)

编辑:

当我设置这个:

   app.UseCookieAuthentication(new CookieAuthenticationOptions
        {
            AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
            LoginPath = new PathString("/Logon/LogOn"),
            ExpireTimeSpan = TimeSpan.FromMinutes(30),
        });
Run Code Online (Sandbox Code Playgroud)

我是否需要从那里评论/删除此代码:

app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                LoginPath = new PathString("/Account/Login"),
                Provider = new CookieAuthenticationProvider
                {
                    OnValidateIdentity = SecurityStampValidator.OnValidateIdentity<ApplicationUserManager, ApplicationUser>(
                        validateInterval: TimeSpan.FromMinutes(30),
                        regenerateIdentity: (manager, user) => user.GenerateUserIdentityAsync(manager))
                }
            });

            app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
Run Code Online (Sandbox Code Playgroud)

tra*_*max 3

为了禁用“记住我”false作为最后一个参数传递

await userManager.SignInAsync(AuthenticationManager, user, false);
Run Code Online (Sandbox Code Playgroud)

并从您的视图中删除此复选框。

要让cookie在30分钟后过期,在你Auth.Config设置ExpireTimeSpan为30分钟

app.UseCookieAuthentication(new CookieAuthenticationOptions
{
    AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
    LoginPath = new PathString("/Logon/LogOn"),
    ExpireTimeSpan = TimeSpan.FromMinutes(30),
});
Run Code Online (Sandbox Code Playgroud)