Best Practices

Session-Cookies: Definition, Beispiele und Einwilligung

Inhalt des Artikels

Session-Cookies sind die häufigsten Cookies im Web und zugleich die unauffälligsten. Man bemerkt sie kaum, sie verschwinden von selbst, und doch funktionieren Logins und Warenkörbe nur dank ihnen. Dieser Artikel erklärt, was ein Session-Cookie ist, wie es funktioniert, worin es sich von einem persistenten Cookie unterscheidet, wann es eine Einwilligung erfordert und wie Sie die Session-Cookies Ihrer Website finden. Für den Gesamtüberblick (First-Party- und Third-Party-Cookies, Zwecke, Rechtslage) lesen Sie zuerst unseren Leitfaden Was sind Cookies? Arten und Funktionsweise.

Ein Session-Cookie (auch Sitzungscookie, temporäres Cookie oder Cookie im Arbeitsspeicher genannt) ist ein HTTP-Cookie, das nur für die Dauer einer Browsersitzung existiert. Technisch macht es zum Session-Cookie, was ihm fehlt: Der Server sendet es ohne Expires-Datum und ohne Max-Age-Wert. Der Browser hält es dann im Arbeitsspeicher und verwirft es am Ende der Sitzung.

So sieht die Antwort des Servers in einem typischen Fall aus:

```

Set-Cookie: PHPSESSID=8f2c1a9e7b; Path=/; Secure; HttpOnly; SameSite=Lax

```

Mit dem Zusatz Max-Age=2592000 würde dasselbe Cookie zu einem persistenten Cookie, das 30 Tage gespeichert bleibt, ob Sie den Browser schließen oder nicht.

Ein Session-Cookie enthält in der Regel keine personenbezogenen Daten im Klartext. Es trägt eine zufällige Kennung (die Session-ID); die eigentlichen Informationen (wer Sie sind, was im Warenkorb liegt) bleiben auf dem Server, verknüpft mit dieser Kennung.

Wie funktionieren Session-Cookies?

  1. Sie öffnen eine Seite. Der Server legt eine Sitzung an, erzeugt eine zufällige ID und sendet sie in einem Set-Cookie-Header ohne Ablaufdatum.
  2. Der Browser speichert das Cookie für diese Website im Arbeitsspeicher.
  3. Bei jeder weiteren Anfrage an dieselbe Website sendet der Browser das Cookie im Cookie-Header zurück.
  4. Der Server liest die ID, findet die passende Sitzung und weiß, dass Sie die Person sind, die sich vor einer Minute angemeldet oder ein Produkt in den Warenkorb gelegt hat.
  5. Endet die Sitzung, vergisst der Browser das Cookie. Die serverseitige Sitzung läuft außerdem nach einer von der Website festgelegten Inaktivitätszeit ab.

HTTP ist ein zustandsloses Protokoll: Ohne diesen Mechanismus wäre jeder Seitenaufruf für den Server ein Unbekannter. Session-Cookies geben der Website ein kurzes Gedächtnis, begrenzt auf den Besuch.

Wann endet eine Browsersitzung?

Hier trifft die Lehrbuchdefinition auf die Praxis. MDN, die Referenzdokumentation für Webentwickler, weist darauf hin, dass der Browser über das Ende der Sitzung entscheidet und viele Browser eine Sitzungswiederherstellung bieten. Nutzen Sie in Chrome „Dort weitermachen, wo ich aufgehört habe“ oder in Firefox „Vorherige Fenster und Tabs öffnen“, können Ihre Session-Cookies einen Neustart überstehen, als hätten Sie den Browser nie geschlossen. Auf dem Smartphone, wo Apps selten beendet werden, kann eine Sitzung Tage dauern. Ein Session-Cookie ist also im Prinzip kurzlebig, in der Praxis nicht immer.

Beispiele für Session-Cookies

Die meisten Server-Technologien setzen standardmäßig ein Session-Cookie:

  • PHPSESSID: das Session-Cookie von PHP. Der Standardwert von session.cookie_lifetime ist 0, also „bis der Browser geschlossen wird“.
  • JSESSIONID: die Session-Kennung von Java-Servern wie Tomcat.
  • ASP.NET_SessionId: das Session-Cookie von ASP.NET-Anwendungen.
  • connect.sid: der Standardname von express-session unter Node.js, das kein Ablaufdatum setzt, solange der Entwickler keines ergänzt.

Typische Einsätze: Nutzer während des Besuchs eingeloggt halten, den Warenkorb bis zur Bestellung speichern, die Schritte eines mehrseitigen Formulars übertragen, Formulare gegen Cross-Site Request Forgery (CSRF) schützen und Besucher hinter einem Load Balancer zum selben Server leiten.

Vorsicht bei Namen. Ein Cookie mit „session“ im Namen ist nicht unbedingt ein Session-Cookie. Google Analytics 4 setzt _ga_<container-id>, um den Zustand Ihrer Analyse-Sitzung zu speichern, doch es bleibt standardmäßig 2 Jahre bestehen, wie unser Artikel über die Cookies _ga, _gid und _gat zeigt. Entscheidend sind nur die Ablaufattribute.

Session-Cookies und persistente Cookies im Vergleich

Ein persistentes Cookie hat ein Expires-Datum oder einen Max-Age-Wert. Es bleibt bis zu diesem Zeitpunkt auf dem Gerät, auch nach dem Schließen des Browsers, sofern der Nutzer es nicht löscht. Die Unterschiede im Einzelnen:

  • Lebensdauer: Das Session-Cookie endet mit der Browsersitzung; das persistente Cookie gilt bis zu seinem Ablaufdatum, von wenigen Minuten bis zu mehreren Jahren.
  • Speicherort: Session-Cookies liegen im Arbeitsspeicher; persistente Cookies werden auf die Festplatte geschrieben.
  • Typische Zwecke: Session-Cookies verwalten Login, Warenkorb und Formulare während des Besuchs; persistente Cookies merken sich Einstellungen, „Angemeldet bleiben“ und Analyse- oder Werbe-IDs über mehrere Besuche.
  • Tracking-Potenzial: Ein Session-Cookie kann Sie während eines Besuchs verfolgen; ein persistentes Cookie kann Sie über Wochen oder Monate wiedererkennen.

Bei persistenten Cookies stellt sich die Frage nach der zulässigen Dauer. Die französische Aufsichtsbehörde CNIL empfiehlt höchstens 13 Monate für einwilligungspflichtige Cookies; Details finden Sie in unserem Artikel zur Cookie-Speicherdauer.

Brauchen Session-Cookies eine Einwilligung?

Die Regel stammt aus Artikel 5 Absatz 3 der ePrivacy-Richtlinie, in Deutschland umgesetzt durch § 25 TDDDG: Das Speichern von oder der Zugriff auf Informationen im Endgerät erfordert eine Einwilligung, außer es ist unbedingt erforderlich, um einen vom Nutzer ausdrücklich gewünschten Dienst bereitzustellen (oder dient allein der Übertragung einer Nachricht). Die Lebensdauer ist kein Kriterium. Der Zweck schon.

In ihrer Stellungnahme 04/2012 zur Ausnahme von der Cookie-Einwilligung nannte die Artikel-29-Datenschutzgruppe (heute der EDSA) Beispiele für befreite Cookies. Mehrere davon sind ihrem Wesen nach Session-Cookies:

  • Cookies für Nutzereingaben, die Formulareingaben oder den Warenkorb für die Dauer der Sitzung festhalten;
  • Authentifizierungs-Cookies, die Sie während einer Sitzung eingeloggt halten;
  • nutzerorientierte Sicherheits-Cookies, etwa zur Erkennung wiederholter fehlgeschlagener Logins;
  • Session-Cookies für den Lastausgleich;
  • Session-Cookies von Multimedia-Playern, die technische Daten für die Wiedergabe von Video oder Audio speichern.

Dieselbe Stellungnahme hält fest, dass ein Session-Cookie für einen anderen Zweck, etwa Tracking, nicht befreit ist. Auch die Orientierungshilfe der Datenschutzkonferenz (DSK) für Anbieter von Telemedien stellt auf die unbedingte Erforderlichkeit für den gewünschten Dienst ab, nicht auf die Speicherdauer.

In der Praxis:

  • Eine PHPSESSID, die nur das Login hält: unbedingt erforderlich, keine Einwilligung nötig, aber sie gehört in Ihre Cookie-Richtlinie.
  • Ein Analyse- oder Werbetool, das ein Session-Cookie setzt, um Seitenaufrufe zu gruppieren: Einwilligung erforderlich, bevor das Cookie gesetzt wird.
  • Ein Chat-Widget, das ein Session-Cookie setzt, bevor der Besucher den Chat öffnet: prüfenswert, denn es erfüllt noch keinen Wunsch des Besuchers.

Sie wissen nicht, was Ihre Website beim ersten Laden setzt? Prüfen Sie in 30 Sekunden mit dem kostenlosen Cookie-Scanner, welche Cookies Ihre Website vor jeder Einwilligung setzt.

Session-Cookies anzeigen und löschen

Im Browser. Öffnen Sie die Entwicklertools (F12), dann in Chrome oder Edge den Tab „Application“ bzw. „Anwendung“, in Firefox den Tab „Web-Speicher“, und wählen Sie Cookies. In der Spalte für das Ablaufdatum stehen Session-Cookies mit „Session“ statt eines Datums.

Zum Löschen. Das Schließen aller Browserfenster entfernt Session-Cookies, sofern die Sitzungswiederherstellung ausgeschaltet ist. Sicherer ist es, die Cookies der Website in den Browsereinstellungen zu löschen oder ein privates Fenster zu nutzen, dessen Cookies beim Schließen gelöscht werden.

Auf Ihrer eigenen Website. Öffnen Sie ein privates Fenster, laden Sie die Startseite, ohne den Banner zu berühren, und listen Sie die Cookies auf. Jedes Cookie, das jetzt schon vorhanden ist, ob Session oder persistent, muss unbedingt erforderlich sein. Alle anderen werden zu früh gesetzt.

Sicherheit: Session-Cookies schützen

Da ein Session-Cookie oft belegt, wer Sie sind, kann ein Angreifer mit einem gestohlenen Cookie die Sitzung übernehmen. Übliche Schutzmaßnahmen:

  • HttpOnly: JavaScript kann das Cookie nicht lesen, was den Diebstahl über eingeschleuste Skripte erschwert.
  • Secure: Das Cookie wird nur über HTTPS gesendet.
  • SameSite=Lax oder Strict: Das Cookie wird bei den meisten websiteübergreifenden Anfragen nicht mitgeschickt, was CSRF erschwert.
  • Neue Session-ID nach dem Login: Das OWASP Session Management Cheat Sheet empfiehlt, die Kennung bei einer Änderung der Berechtigungen neu zu erzeugen, um Session Fixation zu verhindern.
  • Serverseitiges Timeout: Die Sitzung sollte nach Inaktivität ablaufen, egal was der Browser mit dem Cookie macht.

Das Transparenzgebot der DSGVO und die ePrivacy-Regeln gelten für alle Cookies, befreit oder nicht. Ihre Cookie-Richtlinie oder Cookie-Erklärung sollte jedes Session-Cookie mit Name, Anbieter, Zweck, Kategorie und der Dauer „Session“ aufführen. Unbedingt erforderliche Session-Cookies gehören in die Kategorie, die unser Leitfaden zu DSGVO-Cookie-Kategorien beschreibt, mit dem Hinweis, dass sie nicht abgelehnt werden können, weil die Website ohne sie nicht funktioniert.

Wie FlowConsent Session-Cookies umsetzt

FlowConsent ist ein Beispiel für einen Cookie-Banner, der Session-Cookies nach ihrem Zweck behandelt, nicht nach ihrer Lebensdauer. Der automatische Cookie-Scan erkennt die Cookies, die Ihre Website tatsächlich setzt, und übernimmt die beobachtete Domain, Dauer und Art: Ein Session-Cookie erscheint also als solches. Cookies bekannter Dienste werden mit ihrer Kategorie eingeordnet; eigene First-Party-Cookies, etwa eine Warenkorb-Session Ihres Backends, fügen Sie von Hand mit Name, Zweck und Dauer hinzu. Alle nicht notwendigen Skripte bleiben bis zur Einwilligung blockiert, und jede Entscheidung wird als exportierbarer Nachweis gespeichert, gehostet in Europa. FlowConsent ist bis 25.000 Sitzungen pro Monat kostenlos und in etwa zehn Minuten installiert. Die Dokumentation zur Cookie-Erklärung zeigt, wie die Liste entsteht.

Fragen

Häufige Fragen zu diesem Thema.

Ihre Frage ist nicht dabei? Schreiben Sie uns, wir antworten schnell.

Was ist der Unterschied zwischen Session-Cookies und persistenten Cookies?

Ein Session-Cookie hat kein Ablaufdatum, daher löscht der Browser es am Ende der Browsersitzung, meist beim Schließen. Ein persistentes Cookie hat ein Expires- oder Max-Age-Attribut und bleibt bis zu diesem Datum auf dem Gerät, auch nach einem Neustart. Session-Cookies verwalten Login und Warenkorb während des Besuchs; persistente Cookies speichern Einstellungen und Analyse- oder Werbe-IDs über mehrere Besuche.

Brauchen Session-Cookies nach DSGVO eine Einwilligung?

Nicht immer. Nach Artikel 5 Absatz 3 der ePrivacy-Richtlinie und § 25 TDDDG zählt der Zweck, nicht die Lebensdauer. Ein Session-Cookie, das für einen vom Nutzer gewünschten Dienst unbedingt erforderlich ist, etwa Login, Warenkorb oder Lastausgleich, ist befreit. Ein Session-Cookie für Analyse, Werbung oder Tracking braucht vor dem Setzen eine Einwilligung, auch wenn es beim Schließen des Browsers verschwindet.

Welche Beispiele für Session-Cookies gibt es?

Typische Beispiele sind PHPSESSID (PHP), JSESSIONID (Java-Server wie Tomcat), ASP.NET_SessionId (ASP.NET) und connect.sid (express-session unter Node.js). Sie enthalten eine zufällige Session-ID, mit der der Server Sie eingeloggt hält, den Warenkorb speichert oder ein mehrstufiges Formular weiterführt. Ein Name mit „session“ beweist nichts: Das GA4-Cookie _ga_ speichert den Sitzungszustand, bleibt aber 2 Jahre bestehen.

Wie lösche ich ein Session-Cookie?

Schließen Sie alle Browserfenster: Session-Cookies werden am Ende der Browsersitzung gelöscht. Stellt Ihr Browser die vorherige Sitzung beim Start wieder her, etwa mit der Chrome-Option Dort weitermachen, wo ich aufgehört habe, können sie zurückkommen. Löschen Sie dann die Cookies der Website in den Einstellungen. Am einfachsten ist ein privates Fenster: Alle seine Cookies werden beim Schließen gelöscht.

Sind Session-Cookies sicher?

Session-Cookies enthalten meist nur eine zufällige ID, keine personenbezogenen Daten im Klartext, und verschwinden schnell. Das Hauptrisiko ist Session Hijacking: Wer das Cookie stiehlt, kann auf der Website in Ihrem Namen handeln. Websites senken dieses Risiko mit den Attributen HttpOnly, Secure und SameSite, einer neuen Session-ID nach dem Login und einem serverseitigen Timeout. Auf geteilten Geräten beendet auch das Abmelden die Sitzung.

Machen Sie Ihre Website noch heute konform.

Kostenlos bis 25.000 Sitzungen pro Monat. Keine Kreditkarte, keine Bindung.