Hallo,
ich habe als Projekt einen Onlineshop und dort das Problem, dass eine Sessionübernahme problemlos möglich ist. Gibt man also einen Link an einen anderen nutzer weiter, so erhält der andere nutzer ohne Weiteres alle informationen aus Warenkorb etc. ... ist natürlich nicht Sinn der Sache.
Nun sollen keine Cookies verwendet werden, was mich zu der Überlegung bringt die IP des users im Sessionfile auf dem Server zu speichern. In den Links des Shops wird jeweils die Sessionid mit übergeben, nun müsste ich quasi "nur" das entsprechende Sessionfile laden und dort die gespeicherte IP ermitteln.
Speichern der IP im Sessionfile ist kein Problem, nur mit dem laden einer alten Session und dem Auslesen von Daten komme ich nicht klar, zugegebener Maßen.
Zum Test habe ich einfach einen String in die aktuelle Session gepumpt
Ich habe den folgenden Code gefunden (php.net), welchen man sicher verwenden kann. Was ist $session_string ?
Ich habe eine session_id und einen session_name, in der url staht also http....&meineid=123456sdf... was genau wird hier benötigt?
Wie kann ich aus $restored_session meine Variable laden?
Kann mir da jemand helfen?
ich habe als Projekt einen Onlineshop und dort das Problem, dass eine Sessionübernahme problemlos möglich ist. Gibt man also einen Link an einen anderen nutzer weiter, so erhält der andere nutzer ohne Weiteres alle informationen aus Warenkorb etc. ... ist natürlich nicht Sinn der Sache.
Nun sollen keine Cookies verwendet werden, was mich zu der Überlegung bringt die IP des users im Sessionfile auf dem Server zu speichern. In den Links des Shops wird jeweils die Sessionid mit übergeben, nun müsste ich quasi "nur" das entsprechende Sessionfile laden und dort die gespeicherte IP ermitteln.
Speichern der IP im Sessionfile ist kein Problem, nur mit dem laden einer alten Session und dem Auslesen von Daten komme ich nicht klar, zugegebener Maßen.
Zum Test habe ich einfach einen String in die aktuelle Session gepumpt
Code:
$lmsmass = 'lickMyShinyMetalA**';
session_register('lmsmass');
Ich habe den folgenden Code gefunden (php.net), welchen man sicher verwenden kann. Was ist $session_string ?
Ich habe eine session_id und einen session_name, in der url staht also http....&meineid=123456sdf... was genau wird hier benötigt?
Wie kann ich aus $restored_session meine Variable laden?
Code:
function decode_session($session_string){
// keep original (current) session in $current_session
$current_session = session_encode();
// destroy original sessiondata
foreach ($_SESSION as $key => $value){
unset($_SESSION[$key]);
}
// load new sessiondata
session_decode($session_string);
// keep new loaded sessiondata in variable $restored_session
$restored_session = $_SESSION;
// destroy actual (reloaded) sessiondata
foreach ($_SESSION as $key => $value){
unset($_SESSION[$key]);
}
Kann mir da jemand helfen?