Problem beim Login mit Sessions

03/03/2009 - 11:25 von Sebastian B. | Report spam
Hallo,

ich baue mir gerade eine ASP.NET Seite zusammen und brauche dafür auch einen
Login. Den Login habe ich auch bereits schon erstellt und wenn der Benutzer
in meiner Datenbank angelegt ist, erstelle ich mir eine Session, um auf den
nachfolgenden Seiten im "Page_Load" überprüfen zu können, ob die Session
existiert, sprich der Benutzer sich eingeloggt hat.

Mein Problem ist aber nun, wenn ich mich einlogge und danach wieder
auslogge, kann ich danach immer noch auf eine geschützte Seite zugreifen,
sprich die Überprüfung in der "Page_Load" greift dann nicht, wenn ich vorher
schonmal eingeloggt war. Liegt das vielleicht daran, dass die Seite sich
noch im Cache befindet?

Habe ihr vielleicht einen Lösungsansatz, wie ich das umgehen bzw. lösen
kann?


Code für die Überprüfung in einer Page_Load:

protected void Page_Load(object sender, EventArgs e)
{
if (Session["LoggedIn"] != null)
{

}
else
{
Response.Redirect("Login.aspx");
}
}

MfG
Sebastian B.
 

Lesen sie die antworten

#1 Thomas Bandt
03/03/2009 - 11:55 | Warnen spam
Sebastian B. schrieb:
Hallo,

ich baue mir gerade eine ASP.NET Seite zusammen und brauche dafür auch einen
Login. Den Login habe ich auch bereits schon erstellt und wenn der Benutzer
in meiner Datenbank angelegt ist, erstelle ich mir eine Session, um auf den
nachfolgenden Seiten im "Page_Load" überprüfen zu können, ob die Session
existiert, sprich der Benutzer sich eingeloggt hat.

Mein Problem ist aber nun, wenn ich mich einlogge und danach wieder
auslogge, kann ich danach immer noch auf eine geschützte Seite zugreifen,
sprich die Überprüfung in der "Page_Load" greift dann nicht, wenn ich vorher
schonmal eingeloggt war. Liegt das vielleicht daran, dass die Seite sich
noch im Cache befindet?

Habe ihr vielleicht einen Lösungsansatz, wie ich das umgehen bzw. lösen
kann?



Setzt du denn die Session auf null beim Ausloggen? Wenn ja
sollte das so funktionieren.

ASP.NET bringt übrigens mit FormsAuthentication eine prima
Lösung mit, mit der man auf solche selbst gebastelten Lösungen
verzichten kann.

Gruß, Thomas [MVP ASP/ASP.NET]
http://www.69grad.de - Die ASP.NET-Profis aus Nürnberg
http://blog.thomasbandt.de - Privates Blog

Ähnliche fragen