Frage

Ich bin eine ASP.NET MVC aplication Entwicklung und ich brauche die Geschichte des Logins eines Benutzers zu erfassen. Ich brauche etwas Ähnliches wie die letzte hier in Stack-Überlauf gesehen (ich die Geschichte wird zu halten, ich weiß nicht, ob SO tut dies). Ich möchte wissen, was der beste Weg ist, es zu tun?

  • Global.asax: Application_AuthenticateRequest, Application_AuthorizeRequest, Session_Start
  • Site.Master

andere, Vor- und Nachteile jeder?

Danke

War es hilfreich?

Lösung 3

Ich beende dies zu tun:

Ich habe in der global.asax in protected void Session_Start () und in der Zulassung Routine.

Andere Tipps

Ich möchte zunächst eine Datenbanktabelle erstellen die Login-Geschichte zu halten. Wenn Sie das Basis-Projekt verwenden, dann würde ich um den Anmelde Aktion und Ort Code des Account gehen, um einen Datensatz in der History-Tabelle nach der FormsAuth.SignIn Zeile zu schreiben.

        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");
        }

Membership Provider ein ValidatingPassword Ereignis aus. Ich würde meine Revision zu, dass anstatt innerhalb der Steuerung verbinden. Um dies noch einfacher zu machen, könnten Sie haben gerade das Feuer aus einem WebEvent dann die verfügbaren <heartbeat> Eigenschaften in Ihrem web.config die Informationen zu erfassen, anstatt irgendeinen Code zu schreiben, dies zu umgehen.

Beachten Sie auch, dass, wenn Ihr Ziel ist nur bis zu einem gewissen Rekord von einem Defekt, die fehlgeschlagene Anmeldungen automatisch mit der Standardkonfiguration in das Ereignisprotokoll gesendete.

PS: Gerade die Frage neu lesen. Egal, wie Sie es tragen wollen, ist Site.Master der falsche Ort, etwas zu tun wie diese. Was passiert, wenn Sie eine zweite Masterseite introcuce? Oder machen zu der Vorlage, was die Vorlage der ist.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top