net - login entity framework c# mvc
MVC 5 redirigir a la página de inicio de sesión que no funciona con OWIN (2)
Creé dos nuevos proyectos similares y pude reproducir tu error.
En el proyecto en blanco, tuve que instalar Microsoft.Owin.Host.SystemWeb
(a través de Nuget) y una vez que hice esto, estaba recibiendo un montón de errores en mi clase Startup.cs. Terminó con esto:
[assembly: OwinStartupAttribute(typeof(v2.Startup))]
namespace v2
{
public partial class Startup
{
public void Configuration(IAppBuilder app)
{
ConfigureAuth(app);
}
public void ConfigureAuth(IAppBuilder app)
{
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "ApplicationCookie",
LoginPath = new PathString("/Account/Login")
});
}
}
}
Al final, ahora soy capaz de pulsar / ver mi vista de inicio de sesión cuando llamo al método About () decorado con el atributo [Authorize]
.
¡Espero que esto ayude! Vince
Estoy tratando de entender con OWIN. He creado dos proyectos de MVC 5. Uno con autenticación usando Aspnet.Identity y el otro comenzó como un proyecto vacío.
Agregué lo siguiente al proyecto emptyp:
Controlador de cuenta con una acción de inicio de sesión y una vista correspondiente
Startup.cs y otro Startup.cs parcial con
public partial class Startup
{
public void ConfigureAuth(IAppBuilder app)
{
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "ApplicationCookie",
LoginPath = new PathString("/Account/Login")
});
}
}
He decorado la acción About en el controlador Home con el atributo [Authorize] en ambos proyectos.
Cuando ejecuto el primer proyecto y voy a la pantalla Acerca de antes de iniciar sesión, redirige a la acción de inicio de sesión como era de esperar. Cuando hago lo mismo para el segundo proyecto, obtengo un "HTTP Error 401.0 - No autorizado" en lugar de redireccionar.
¿Alguna idea de lo que causaría que el segundo se comporte de esta manera?
Por ASP.NET MVC 5 Web.config: "FormsAuthenticationModule" o "FormsAuthentication"
<system.webServer>
<modules>
<remove name="FormsAuthentication" />
</modules>
</system.webServer>
para mayor seguridad, dejé el manejador de "error tipográfico" (en caso de que Microsoft lo cambie luego dándome)
<system.webServer>
<modules>
<remove name="FormsAuthenticationModule" />
<remove name="FormsAuthentication" />
</modules>
</system.webServer>