Michilee: Session Token

Beitrag lesen

Hi Forum,
ich habe heute dies durchgelesen:
http://www.jsptutorial.org/content/session#innerLink7

Und bin unten etwas hängengeblieben bei der Erklärung
"
Wie man sieht, wird das Token gleichermaßen in den Request und in die Session gelegt. Warum nicht nur an einer Stelle? In der JSP müssen wir das Token als Bestandteil sämtlicher Links und/oder als Action-Attribut eines Formulars ausgeben. Zum Zeitpunkt der Ausgabe in der JSP kann bereits durch eine parallele Anfrage ein anderes Token als ursprünglich angefordert in der Session abgelegt worden sein könnte. Zwei Seiten würden dann das gleiche Token verwenden - etwas, was unser Token-Handling unnütz machen würde, da Anfragen beider Seiten in der Folge akzeptiert würden. Indes steht auch bei mehreren gleichzeitigen Anfragen für jede Anfrage ein eigenes Request-Objekt zur Verfügung, und somit greift die Ausgabe in der JSP weiterhin auf das korrekte Token zu, wenn sie dieses aus dem Request nimmt.
"

1. Das man an zwei Stellen speichert hört sich gut an, was ich aber nicht verstehe, wenn zwei Seiten geladen würden, warum man zweimal denselben Token erhält?

2. Diese zwei Zeilen habe ich auch nicht ganz verstanden
HttpSession session = getSession(request);
String token = getToken();

getToken(). Man kann eine Methode ohne Punkt aufrufen, wenn sie innerhalb derselben Klasse womöglich ist, wie sieht es jedoch bei getSession oben aus, wobei ich dachte, dass man da als Wert nur false oder true mitgeben konnte, hier jedoch wird ein request mitgegeben und der ganze Methodenaufruf wiederum ohne Punkt davor?

Allgemein Listener und Handler muss ich mir auch noch anschauen. In den Handlern wäre ja der Code von oben drin. Handler praktisch alle JSP-Seiten, die es im Projekt gibt?

3. Ah zwei Kleinigkeiten hätte ich noch:
"
Dafür kann man geeignete Listener implementieren, die entweder bei Erzeugung und Zerstörung einer Session aufgerufen werden (javax.servlet.http.HttpSessionListener), die auf das Hinzufügen und Entfernen von Objekten zu einer Session reagieren
"
Listener reagieren automatisch oder muss man die irgendwie implementieren/aufrufen?

4. Als große Sicherheit bei Session ist ja immer die Rede von "Ursprungsregel". Was meint man damit genau? Wenn ein Client/Anfrager die URL des Servers aufruft und nicht über eine andere Domain aufruft? Habe ich nicht so ganz gecheckt.

Viele Grüße