Sitzungs-ID-Cookie in gwt rpc

8

Angenommen, ich würde meinen eigenen Sitzungscode erstellen, was ist der richtige Weg, um einen eindeutigen und sicheren Sitzungs-ID-Cookie in Java zu generieren.

Sollte ich nicht meine eigene rollen, sondern etwas verwenden, das bereits standardisiert ist?

Ich verwende gwt und die Google App-Engine-Plattform.

Wie mache ich Sitzungen über Neustarts von Browsern / Servern hinweg bestehen?

    
antony.trupe 05.09.2009, 00:45
quelle

3 Antworten

24

Servlet-Sitzungen in GWT verwenden

In der Remote-Service-Implementierungsklasse:

%Vor%

Im Client-Code:

%Vor%

Aktivieren_Sitzungen

appengine-web.xml

%Vor%     
antony.trupe 05.09.2009, 18:09
quelle
2

Nein, Sie sollten nicht Ihre eigenen rollen.

Die Sitzungs-ID muss kryptographisch zufällig sein (nicht aus bekannten Quellen zu erraten). Es ist schwierig, das selbst richtig zu machen.

    
Noon Silk 05.09.2009 00:50
quelle
1

Idealerweise sollten Sie sich auf die Sitzungsverwaltungsfunktionen des zugrunde liegenden Frameworks verlassen. Servlets & amp; JSPs, Struts und Spring haben diese Unterstützung, die Sie verwenden sollten.

In dem extrem seltenen Fall, dass Sie ein eigenes Framework schreiben, auf dem keine zugrunde liegenden Sitzungsverwaltungsfunktionen basieren, können Sie mit der Klasse java.security.SecureRandom beginnen. Natürlich, erfinden Sie das Rad hier nicht neu, denn die Verwaltung unterbrochener Sitzungen ist mit einer fehlerhaften Authentifizierung identisch.

Aktualisieren

Da Sie Google App Engine verwenden, sollten Sie sich auf die von der Engine bereitgestellten Funktionen zur Sitzungsverwaltung verlassen. Es scheint, dass es nicht standardmäßig aktiviert ist .

    
Vineet Reynolds 05.09.2009 01:02
quelle