Michael Schröpl: Wie erzeuge ich eine session-ID ?

Beitrag lesen

Mein eigentliches Problem ist eine session-ID zu erzeugen, damit jeder Benutzer identifiziert werden kann. By the way, es sollte ohne cookies funktionieren.
In einer fruehreren Version habe ich das ganze geloest in dem der User ganz am Anfang ein Passwort eingeben musste, das er dann mitschleifte.

Aus meiner Sicht unterteilt sich Dein Problem in zwei Abschnitte:

a) Erzeugen einer eindeutigen Session-ID.
Ein Passwort alleine ist nicht eindeutig. Aber eine Kombination aus etwas, das der Benutzer definiert, und etwas, das eindeutig ist, sollte Deine Anforderung erfüllen.
Eindeutig ist beispielsweise eine Kombination aus Datum & Uhrzeit plus die Prozeßkennung eines Server-Prozesses ($PID). Zu einem Zeitpunkt kann es nur einen Prozeß mit einer konkreten PID geben, also muß ein String mit Datum, Uhrzeit und PID eindeutig sein.

b) Durchschleifen der Information.
Wenn ein Client eine Session erst einmal begonnen hat, dann muß er wegen des zustandslosen Protokolls HTTP seine Kennung immer wieder mitsenden.
Über den HTTP-eigenen Mechanismus (http://www.teamone.de/selfaktuell/schroepl01.htm) kann der Browser das alleine; wenn Du eine eigene Session-ID verwenden willst, dann mußt Du diese Kennung selbst immer wieder mitschicken. Dazu mußt Du sie entweder in einem Cookie speichern oder von Seite zu Seite weiterreichen - dazu gibt es im Archiv genügend Ideen.