[BUGFIX] Update session id in user property 01/50701/2
authorHelmut Hummel <info@helhum.io>
Thu, 17 Nov 2016 23:56:47 +0000 (23:56 +0000)
committerHelmut Hummel <typo3@helhum.io>
Fri, 18 Nov 2016 14:38:22 +0000 (15:38 +0100)
The session id is also additionally stored in the
user property array in AbstractUserAuthentication.
When regenerating the session id, we must update the
session id in this user property as well, otherwise
it leads to failures in session handling (like #69763).

The workaround introduce for #69763 can stay, because
it mitigates other reasons for invalid tokens in the URL
by redirecting to the login page.

Resolves: #78739
Related: #69763
Releases: master, 7.6, 6.2
Change-Id: Ib58e6b5dacae3b9e431e662e214557411fd668f3
Reviewed-on: https://review.typo3.org/50701
Tested-by: TYPO3com <no-reply@typo3.com>
Reviewed-by: Andreas Fernandez <typo3@scripting-base.de>
Tested-by: Andreas Fernandez <typo3@scripting-base.de>
Reviewed-by: Markus Klein <markus.klein@typo3.org>
Tested-by: Markus Klein <markus.klein@typo3.org>
Reviewed-by: Stephan GroƟberndt <stephan@grossberndt.de>
Reviewed-by: Joerg Boesche <typo3@joergboesche.de>
Reviewed-by: Daniel Goerz <ervaude@gmail.com>
Reviewed-by: Helmut Hummel <typo3@helhum.io>
Tested-by: Helmut Hummel <typo3@helhum.io>
typo3/sysext/core/Classes/Authentication/AbstractUserAuthentication.php

index 5abb83b..fccb3b6 100644 (file)
@@ -832,6 +832,7 @@ abstract class AbstractUserAuthentication
             ['ses_id' => $this->id],
             ['ses_id' => $oldSessionId, 'ses_name' => $this->name]
         );
+        $this->user['ses_id'] = $this->id;
         $this->newSessionID = true;
     }