Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.php > #3957

Re: Die Tuecken von session_status()

From k@rl.pflaesterer.de (Karl Pflästerer)
Newsgroups de.comp.lang.php
Subject Re: Die Tuecken von session_status()
Date 2016-09-09 14:25 +0200
Message-ID <m1bmzxuunq.fsf@mbp.pflaesterer.de> (permalink)
References <1t57d137aai2c99n3e8%sfroehli@Froehlich.Priv.at> <m1k2emvayf.fsf@mbp.pflaesterer.de> <1t57d1ddbbi72acn3e8%sfroehli@Froehlich.Priv.at> <m1fup9v9x6.fsf@mbp.pflaesterer.de> <1t57d27a96i2af8n3e8%sfroehli@Froehlich.Priv.at>

Show all headers | View raw


Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) writes:

> On Fri, 09 Sep 2016 08:56:05 Karl Pflästerer wrote:
>> Kannst du das Problem genauer schildern, dass du lösen möchtest?
>
> Dann will mir ganz bestimmt wieder jemand ausreden, das zu tun, was
> ich mache :-)

Das kann geschehen.

>> Die betreffenden Objekte werden also nicht nur in Sessiondaten
>> gespeichert und aus diesen deserialisiert?
>
> Ich hänge mich gerade bei einer Reihe von Singletons in den
> Initialisierungscode, um dort eine Berechtigungsprüfung
> durchzuführen; das hat insbesondere den Charme, nicht durch
> Unachtsamkeit an anderer Stelle umgangen werden zu können. Für die
> Berechtigung brauche ich das aktuelle Login, und das ist in der
> Session gespeichert. So weit, so gut.
>
> Nun kommt es gelegentlich vor, dass auch Singletons in die Session
> gelegt werden, und wenn die dann beim Wiederherstellen *vor* dem
> Login initialisiert werden, schnappt die Berechtigungsprüfung zu.

[...]

> Ob ich in einer Session bin oder nicht, ist ja vergleichsweise
> einfach festzustellen. Aber ob ich in einer (fertig restaurierten)
> Session bin, die kein Login hat, oder ob ich gerade in einer (in
> Aufbau befindlichen) Session bin, deren Login erst noch hinzugefügt
> wird, das ist schwierig zu unterscheiden.


Also musst du entweder sicherstellen, dass die Sessiondaten in einer
festen Reihenfolge deserialisiert werden (ich hatte noch nie das
Problem, also weiß ich nicht, ob es nicht genügt, die umgekehrte
Reihenfolge beim Hinzufügen der Objekte in die Session einzuhalten),
oder du musst dich von deinem Automatismus verabschieden und eine
Methode/Funktion/whatever explizit aufrufen, die die Berechtigungen
prüft.
Diese festen Prüfungen gefallen mir nicht mehr so sehr (ich bin da eher
bei Python: "explizit is better than implicit"), da man im ersten
Augenblick meint, verhindert zu haben, das andere Entwickler (natürlich
immer nur andere :-; ) vergessen, Berechtigungen zu prüfen.
Bei Szenarien, wie du sie beschreibst, fallen einem diese Automatismen
dann auf die Füße.

  KP

Back to de.comp.lang.php | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Die Tuecken von session_status() Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-09-08 10:16 +0000
  Re: Die Tuecken von session_status() k@rl.pflaesterer.de (Karl Pflästerer) - 2016-09-08 14:21 +0200
    Re: Die Tuecken von session_status() Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-09-08 22:14 +0000
      Re: Die Tuecken von session_status() k@rl.pflaesterer.de (Karl Pflästerer) - 2016-09-09 08:56 +0200
        Re: Die Tuecken von session_status() Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-09-09 09:09 +0000
          Re: Die Tuecken von session_status() k@rl.pflaesterer.de (Karl Pflästerer) - 2016-09-09 14:25 +0200
            Re: Die Tuecken von session_status() Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-09-09 17:03 +0000
              Re: Die Tuecken von session_status() k@rl.pflaesterer.de (Karl Pflästerer) - 2016-09-09 20:46 +0200
                Re: Die Tuecken von session_status() Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-09-11 16:06 +0000
      Re: Die Tuecken von session_status() "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-09-09 19:39 +0200
        Re: Die Tuecken von session_status() Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-09-11 16:02 +0000
          Re: Die Tuecken von session_status() "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-09-15 15:25 +0200
            Re: Die Tuecken von session_status() Stefan+Usenet@Froehlich.Priv.at (Stefan Froehlich) - 2016-10-02 18:48 +0000
              Re: Die Tuecken von session_status() "Christoph M. Becker" <cmbecker69@arcor.de> - 2016-10-03 19:47 +0200

csiph-web