Registro de usuario de acceso a una aplicación ASP.NET MVC
-
13-09-2019 - |
Pregunta
Estoy desarrollando una aplicacion ASP.NET MVC y necesito registrar la historia de los inicios de sesión de un usuario. Necesito algo similar a lo visto por última vez aquí en desbordamiento de pila (I va a mantener la historia, no sé si lo mismo ocurre esto). Quiero saber cuál es la mejor manera de hacerlo?
- Global.asax: Application_AuthenticateRequest, Application_AuthorizeRequest, Session_Start
- Site.Master
cualquier otro, pros y contras de cada uno?
Gracias
Solución 3
termino haciendo esto:
Me pongo en el Global.asax en Session_Start protegida vacío () y en la rutina de autorización.
Otros consejos
Me gustaría en primer lugar crear una tabla de base de datos para mantener el historial de inicio de sesión. Si se utiliza el proyecto de la base entonces yo iría a la acción de inicio y lugar del código AccountController para escribir un registro a la tabla de historial después de la línea FormsAuth.SignIn.
if (!ValidateLogOn(userName, password))
{
return View();
}
FormsAuth.SignIn(userName, rememberMe);
//*** Write userName to history table *****
if (!String.IsNullOrEmpty(returnUrl))
{
return Redirect(returnUrl);
}
else
{
return RedirectToAction("Index", "Home");
}
proveedores de pertenencia exponen un evento ValidatingPassword
. Me gustaría conectar mi auditoría para que en lugar de dentro del controlador. Para que esto sea aún más fácil, sólo podría tener ese fuego de una WebEvent
continuación, utilizar las funciones disponibles en su <heartbeat>
web.config
para capturar la información en lugar de tener que escribir ningún código para manejar esto.
Tenga en cuenta también que, si su objetivo es simplemente pasar un buen registro de los fallos, los inicios de sesión fallidos automáticamente se envían al registro de eventos con la configuración por defecto.
PD: Sólo volver a leer la pregunta. De cualquier forma que desee llevarlo, Site.Master es el lugar equivocado para hacer algo como esto. ¿Qué ocurre cuando introcuce una segunda página principal? O bien, pagaré a la plantilla de lo que es la plantilla de.