
Ich habe bisher noch keine Loginscripts schreiben müssen.
Mein vorgehen ist wie folgt:
user kommt auf Seite. Es wird überprüft ob die Session-Variable "loggedIn" true ist.
Falls ja = user eingeloggt unter namen der Sessionvariablen "username".
Falls nein = überprüfung ob Cookie vorhanden ist.
Falls ja = überprüfen des nuternamen und der passworts(md5) die im cookie gespeichert sind, falls i.o. wird sessionvariable "loggedIn" true gesetzt.
Falls nein = session-variable "loggedIn" = false.
Wenn sich der User einloggt wird ein Cookie gespeichert, und die sessionvariablen "username" und "loggedIn"=true werden gesetzt.
Ausloggmöglichkeit bei der Cookie und Session gelöscht werden ist auch vorhanden.
Nun gibt es aus meiner Sicht 2 möglichkeiten das ganze zu knacken: entweder man klaut sich von einem anderen user das Cookie, und ist somit automatisch eingeloggt. oder, falls möglich, könnte man ne sessionvariable fälschen, was auch meine Hauptfrage ist.
Ist dieses Loginsystem sicher/praxisorientiert, oder macht ihr dass völlig anders?
Ich möchte eben die möglichkeit offen halten,dass jemand keine Cookies akzeptiert, und trotzdem während einer session eingeloggt bleibt...
Müsste ich noch die Session_id weitergeben(womit fälschen der session sehr schwer würde), oder sind sessions nicht fälschbar(was ich nicht denke)....
Thx für Antworten, bieler
Code: In Zwischenablage kopieren (nur IE)nicht aus. Wäre wirklich schade wenn ich Leute die keine Cookies akzeptieren aussen vor lassen müsste..oder wie macht ihr dass so?(den Satz: "Ihr müsst Cookies aktiviert haben" dünkt mich doch sehr schlecht.....)
Zitat:das heisst, wenn ich einen nutzernamen in eine session speichere, wird der nur übertragen, wenn cookies aktiviert sind, oder ich die sessionid über GET mitgebe?
Die Sessionid muß übertragen werden, da die Session sonst nicht eindeutig identifizierbar ist.
Zitat:Ja, aber wenn ich möchte dass der user(wie hier im forum) eingeloggt bleibt, muss ich ja ein Cookie setzen....
Standardmäßig werden Sessionsids über Cookies realisiert, doppelt gemoppelt bringt also normalerweise nix.