Thread CGI::Session | Session auffrischen bei Driver file (alte Daten behalten) (2 answers)
Opened by GwenDragon at 2013-05-17 18:13

GwenDragon
 2013-05-17 18:13
#167676 #167676
User since
2005-01-17
14749 articles
Admin1
[Homepage]
user image
Ich steh grad auf dem Schlauch und bin schon auf CPAN gewesen.
In PHP gibt es ja die Möglichkeit eine Session mit den alten Daten neu zu starten.
Das wird mit session_regenerate_id() gemacht.

Wie kann ich mit CGI::Session die Session auffrischen? Geht das überhaupt, da beim Driver file doch die Session-ID an den Dateinamen gebunden ist?

Oder muss ich das per Hand machen?
Also so:
1. Session flush()
2. über dataref() die Daten als Hash auslesen
3. Session delete()
4. Session new()
5. über dataref alten Hash zuweisen

ich empfinde das als ziemlich unpraktisch. Auch wenn ich ein Extra-Modul erstelle und dann von CGI::Sessio erbe.

CPAN:HTTP::Session hat ja mehr Abhängigkeiten als CPAN:CGI::Session.

Und das ist wäre ja auch möglich
Code: (dl )
1
2
3
$sess->dataref->{_SESSION_ID} =
$sess->_id_generator->generate_id(
$sess->{_DRIVER_ARGS},'');

http://permalink.gmane.org/gmane.comp.lang.perl.mo...

Oder weiß jemand noch ne Lösung? Oder ein Modul?
Ihr dürft mich auch ruhig lazy nennen, ich habe schon rumgesucht im Web :(

//EDIT: Wer wissen will, warum die ID erneuern: Sicherhheitsbedürfnis wegen Schutz gegen Sessionfixation.
Last edited: 2013-05-17 18:24:23 +0200 (CEST)

View full thread CGI::Session | Session auffrischen bei Driver file (alte Daten behalten)