.Net Identity 将 LoginPath 设置为 https



我在项目中使用 Mvc 5.0 和身份 2.0。

身份框架设置登录路径协议http但我有 ssl 并且需要返回https .我无法使用https更改loginPath属性。

它返回 http://www.mysite/Account/Login 但我需要 https://www.mysite/Account/Login

我的身份配置身份验证:

  public void ConfigureAuth(IAppBuilder app)        
  {
      app.UseCookieAuthentication(new CookieAuthenticationOptions
            {
                AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
                LoginPath = new PathString("/Account/Login"),                  
                ExpireTimeSpan = TimeSpan.FromDays(10),
                CookieName = "auth",
                SlidingExpiration = false                
            });
}

我的索引方法:

[Authorize]
public ActionResult Index()
{
    return View();
}

LoginPath 仅指示未经授权的请求将被重定向的地址。

您需要告诉浏览器,您只接受HTTPS请求。

如果只想在某些请求上使用 HTTPS,最简单的方法是使用 RequireHttps 属性修饰操作方法。

 [Authorize, RequireHttps]
 public ActionResult Index()
 {
    return View();
 }

或者在 FilterConfig 中全局使用此属性。

[RequireHttps]属性添加到AccountControllerLogin操作中。

[RequireHttps]
[Authorize]
public class AccountController
{
        [RequireHttps]
        [AllowAnonymous]
        public ActionResult Login(string returnUrl)
        {
        }
}

相关内容

  • 没有找到相关文章

最新更新