Seite 1 von 1

Sessionhandling in we9

Verfasst: Fr 7. Okt 2022, 19:41
von blickfang
Hi,

webEdition 9 verwaltet die Sessions nun ja selbst in der Datenbank. Die session_id von Backend (/webEdition) und Frontend weicht voneinander ab. Wie kann man im Backend eine Session-Variable setzen, die auf der gleichen Domain auch im Frontend verfügbar ist?

Und gibt es einen Hook, über welchen man mitbekommt, dass sich ein Redakteur aus webEdition ausgeloggt hat?
Gruß, Timo

Re: Sessionhandling in we9

Verfasst: Sa 8. Okt 2022, 11:41
von mokraemer
webEdition 9 verwaltet die Sessions nun ja selbst in der Datenbank. Die session_id von Backend (/webEdition) und Frontend weicht voneinander ab. Wie kann man im Backend eine Session-Variable setzen, die auf der gleichen Domain auch im Frontend verfügbar ist?
Nein, beide sind getrennt wie von http://meineBoeseSeite.de und http://webedition.org . Das Backend hat nichts mit dem Frontend zu tun und ist deshalb getrennt, auch damit bspw. im Frontend keine Sachen aus dem Backend überschrieben werden und auch umgekehrt.
Und gibt es einen Hook, über welchen man mitbekommt, dass sich ein Redakteur aus webEdition ausgeloggt hat?
Hat noch nie jemand gebraucht - und wenn er einfach den Browser schließt, bekommen wir es idr auch nicht mit.

Manchmal hilft es, wenn die Idee ebenfalls mitgeteilt wird, so kann man nur technisch sagen, nein es geht nicht. Vielleicht gibt es ja gute andere Möglichkeiten.

Re: Sessionhandling in we9

Verfasst: Mo 10. Okt 2022, 07:54
von blickfang
Hi Marc,

Ziel ist, innerhalb webEdition ein Dokument aufzurufen, welches nicht über den webEdition Editor/Iframe geladen wird. Damit ist dann aber ifEditmode false und somit wird das Dokument im NotEditmode gezeigt. Daher die Idee ieine eigene Sessionvariable zu setzen diese dann abzufragen.

Re: Sessionhandling in we9

Verfasst: Mo 10. Okt 2022, 09:36
von WBTMagnum
Hallo Timo,

Kannst du dafür ev. die Vorschau-Funktion mit <we:ifWebEdition/> nutzen?

Liebe Grüße,
Sascha

Re: Sessionhandling in we9

Verfasst: Mo 10. Okt 2022, 10:06
von blickfang
Hi Sascha,
leider nein, denn wenn ich in webEdition im Editmode einen ajax call auf irgendeine Datei mache, bin ich auch nicht mehr ifWebEdition. Das Einzige auf was ich hier aktuell zurückgreifen kann ist der Refererrer, da der immer domain.de/webEdition ist. Aber das ist mir eigentlich zu wenig Sicherheit...

Re: Sessionhandling in we9

Verfasst: Mo 10. Okt 2022, 14:52
von mokraemer
gib dem ajax call, doch ein jwt Token mit - damit hast du die beste Sicherheit.

Re: Sessionhandling in we9

Verfasst: Mo 10. Okt 2022, 14:55
von mokraemer
die Funktionen sind in WE vorhanden; müßte nachschauen, ob sich das aus dem formToken direkt so verwenden läßt.

Re: Sessionhandling in we9

Verfasst: Mo 10. Okt 2022, 16:14
von blickfang
jwt wäre ne Idee, dann muss ich den aber überall "manuell" hinhängen - ein Session-Cookie wäre bequemer

Re: Sessionhandling in we9

Verfasst: Do 13. Okt 2022, 09:23
von mokraemer
nein. du nutzt das jwt um damit die Var in der Session zu setzen.
Du mußt von WE Backend nach Frontend eben genauso agieren, wie du es machen würdest, wenn du mit google kommunizierst.

Re: Sessionhandling in we9

Verfasst: Do 13. Okt 2022, 09:33
von blickfang
versteh ich nicht? Ich habe im weBackend und Frontend unterschiedliche session ids. Wenn ich im we Backend etwas in die Session Variable setze, kann ich darauf im Frontend nicht zugreifen.

Ich habe es nun über jwt tokens im header gelöst und frage den Header/Refererer im Frontend ab. So umgehe ich das Problem, überall den Token ranhängen zu müssen.

Würde es aber gerne verstehen, wie das mit dem sessionHandling in we funktioniert ;-)

Re: Sessionhandling in we9

Verfasst: Do 13. Okt 2022, 09:52
von mokraemer
Nein. Du rufst einfach vom Backend einen Endpunkt im Frontend auf und setzt über das JWT-Token dann die Session-Variable. Da du in dem Browser ja eingeloggt bist, kann dann der Browser für den Request die Session Variable dazu setzen.