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

¿Fue útil?

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.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top