[TYPO3-core] RFC #14367: Install Tool does not provide a logout possibility
Lars Houmark
lars at houmark.com
Fri May 14 18:38:44 CEST 2010
Hi Ernesto,
Ernesto Baschny [cron IT] wrote:
> That we currently use PHP sessions and handlers is just the current
> *internal* implementation detail. So either we keep it that way
> (internal) and let the session handling class be enchangeable (which I
> think is nice, because it for example allows better unit testing). Or
> don't use it at all. A "mix up" isn't really nice.
I understand, and I can go with the extra wrapper function in order to
have the extra internal layer, which would make it easier to change the
session handling without having to replace the calls many places, and at
the same time use the same name-space for working with the session.
> The lock file has nothing to do with the session. We agree that logging
> out should clear the lock file, but I don't agree that destroying a
> session should "know" about this aspect that is unrelated to session
> management.
But I don't agree that the lock file has nothing to do with the logout
routine. Think about it this way. Any logout button/link no matter where
will be placed will try to remove that file and redirect when done. Any
logout done by triggering some incident (I mean something potential
evil) will do the same. I cannot think of a situation where you would
want to logout, meaning do session_destroy but not redirect. And since
we have agreed, that the lock file should also be deleted, this will
also be done in any of the above mentioned situations.
So why no centralize all that code? Otherwise you are speaking against
your own request to centralize the session functions and having it easy
changeable. We have the exact same situation several other places, you
need to look no further than the lock file itself. The code for
create/delete is not centralized and therefore *very* redundant and this
is giving some problems/discussions now. The same goes for sorting of
extension versions in the EM. This should also be centralized, and
because it was not, and still isn't, the same problem came back over 3 bugs.
> True, but that is because PHP session handling is not secure by default.
> And we wanted the install tool more secure. After all the session
> handling was added in a security release and not as a regular feature.
I understand and appreciate your work :). I think the implementation in
general was very nice, but I cannot understand, why you think the code
should not be centralized. I feels like you are separating *too* much.
> Hope you understood the motivation behind the session class. While it
> might not have been necessary, we have it, and I think it provides a
> clean separation of tasks.
But maybe too clean? Afterall the session class is called
tx_install_session so it's not that this class will be used for anything
else, so then let's at least keep the redundant code to a minimum.
--
Lars Houmark
More information about the TYPO3-team-core
mailing list