Speichert die aktuelle PHP-Session.
Grundprinzip
Eine PHP Session ID ist ein eindeutiger Kennzeichner, den PHP verwendet, um eine Session zwischen Server und Browser zu identifizieren.
-
Ohne Session-ID könnte der Server nicht erkennen, zu welchem Benutzer bestimmte Daten gehören.
-
In Contao werden Sessions für Backend (z. B. eingeloggte Benutzer) und Frontend (z. B. geschützte Bereiche, Formulare, Shopfunktionen) genutzt.
Funktionsweise
-
Generierung
-
Übermittlung
-
Die Session-ID wird im Normalfall als Cookie (PHPSESSID) an den Browser gesendet.
-
Alternativ kann sie (nur wenn aktiviert, aber unsicher) auch per URL-Parameter übertragen werden – in Contao ist diese Variante standardmäßig deaktiviert.
-
Verwendung in Contao
-
Contao speichert Benutzerdaten (z. B. Login-Status, CSRF-Token, Formularwerte) in der Session.
-
Bei jeder Anfrage übermittelt der Browser die Session-ID im Cookie, sodass Contao die Daten der richtigen Session zuordnen kann.
-
Validierung
-
Contao prüft die Session-ID und stellt sicher, dass sie gültig ist.
-
Wenn die ID fehlt oder nicht passt, wird eine neue Session erzeugt.
Eigenschaften der Contao-Session
Sicherheitshinweise
-
Die Session-ID darf niemals in der URL sichtbar sein → sonst riskanter Session Hijacking.
-
Sie sollte immer per Cookie und über HTTPS übertragen werden.
-
Nach Login oder sensiblen Aktionen: Session regenerieren, um Fixation-Angriffe zu vermeiden.
-
Contao übernimmt diese Schutzmechanismen standardmäßig.
Fazit
Die PHP Session ID ist in Contao der Schlüssel zur Wiedererkennung eines Benutzers zwischen verschiedenen Requests. Sie wird als Cookie verwaltet, dient als Basis für Login-Sessions, CSRF-Schutz und Benutzerinteraktionen und ist durch verschiedene Sicherheitsmechanismen geschützt.