Wenn ASP.NET-Formularauthentifizierung in ASP.NET-Frameworks (ASP.NET MVC, Web Forms usw.) verwendet wird, behalten wir das Authentifizierungscookie im Clientbrowser bei . Als Best Practice setzen wir den Cookie als HttpOnly und Secure. Wir machen auch alle Transaktionen über SSL. Unabhängig von der Art des Mechanismus, mit dem wir den Benutzer authentifizieren (OAuth, ASP.NET-Mitgliedschaftsanbieter usw.), müssen wir die Authentifizierung für eine bessere Benutzererfahrung beibehalten.ASP.NET-Formularauthentifizierung und dauerhafte Authentifizierung Cookie-Sicherheit
Mit all diesen bin ich davon ausgegangen, dass jemand immer noch das Cookie aus dem Client-Browser erhalten und Anfragen mit diesen Auth-Cookie-Werte ausgeben kann. Dies kann vom Server nicht erkannt werden und wir würden geschützte Daten an andere weitergeben.
Denken Sie daran, das Risiko hier zu verringern, ist das Passwort des Kunden jedes Mal zu fragen, wenn er versucht, einige ernsthafte Maßnahmen (wie das Ändern der E-Mail-Adresse, Profilinformationen, etc.) zu ergreifen löst nichts und kann für den Kunden ziemlich nervig sein.
Haben Sie einen Ansatz, den Sie aktiv für diese Art von Problemen verfolgen? Oder was wäre die beste Möglichkeit, um die Authentifizierung im Client-Browser zu erhalten?
Danke Troy, sehr nette Antwort und gute Vorschläge. Ich muss zugeben, dass ich übersehen habe, 'slidingExpiration' auf' false' zu setzen. Ich gehe davon aus, dass dadurch ein abgelaufenes Ticket nicht reaktiviert werden kann. Dies verleiht dem System noch mehr Vertrauen. Was denkst du? – tugberk
Was gleitendes Ablaufdatum tut, wenn es eingeschaltet ist, wendet das Sitzungszeitlimit auf die * letzte Anfrage * an, aber wenn es deaktiviert ist, wendet es es gegen * den Beginn der Sitzung * an. Angenommen, Sie haben eine Zeitüberschreitung von 20 Minuten und verwenden das System aktiv für 10 Minuten. Wenn das Ablaufdatum * on * ist, wird die Zeitüberschreitung nach 30 Minuten ausgeführt. Wenn es * aus * ist, wird die Zeitüberschreitung bei 20 Minuten auftreten. Wenn man es ausschaltet, reduziert sich das Fenster der Gelegenheit, das Konto zu entführen, beeinträchtigt aber die Benutzerfreundlichkeit. Wenn dein System jemand ist, wo Leute reinkommen, was sie schnell brauchen, dann geh und schalte es aus. –
Dann kann in jedem Fall ein abgelaufener Auth Cookie nicht verwendet und reaktiviert werden, oder? – tugberk