Cookies mit CHIPS-Ursprungstest (Independent Partitioned State)

Ab Chrome 100 ermöglicht der CHIPS-Ursprungstest die Aktivierung von Cookies in „partitionierten“ Speicher mit einer separaten Cookie-JAR-Datei pro Website auf oberster Ebene.

Änderungen

Was sind CHIPS?

Cookies Having Independent Partitioned State (CHIPS) ist eine Privacy Sandbox-Lösung, mit der Entwickler ein Cookie für „partitionierten“ Speicher mit separaten Cookie-JAR-Dateien pro Website auf oberster Ebene aktivieren können.

Ein partitioniertes Drittanbieter-Cookie ist mit der Website auf oberster Ebene verknüpft, auf der es ursprünglich gesetzt wurde, und kann nicht von anderer Stelle aus aufgerufen werden. Ziel ist es, zuzulassen, dass Cookies von einem Drittanbieterdienst gesetzt werden, aber nur im Kontext der Website auf oberster Ebene gelesen werden, auf der sie ursprünglich gesetzt wurden.

Für wen ist der Ursprungstest gedacht?

Dieser Test ist als Ursprungstest durch Drittanbieter verfügbar. Damit können Anbieter eingebetteter Inhalte eine neue Funktion auf mehreren Websites ausprobieren.

Wenn sich eine Website als Erstanbieter für den Test anmeldet, ist die Cookie-Partitionierung auch für alle Drittanbieter von Inhalten auf dieser Website verfügbar. Diese Drittanbieter sollten außerdem zusätzliche HTTP-Header erhalten, die auf ihre Registrierung für den Ursprungstest hinweisen.

Wie lange dauert der Test?

Der Testzeitraum ist von Chrome 100 bis Chrome 105 verfügbar. Die geplanten Veröffentlichungsdaten finden Sie im Veröffentlichungszeitplan für Chrome.

Für den Ursprungstest registrieren

Voraussetzungen

Chrome (stabile Version 103)

Schritte

  1. Rufen Sie die Seite CHIPS-Ursprungstest auf, um sich für den Ursprungstest zu registrieren und ein Token für Ihre Domains zu erhalten.

  2. Fügen Sie den Origin-Trial-Header mit einem gültigen Token in alle Antworten mit dem Set-Cookie-Header ein, die Partitioned enthalten:

    Origin-Trial: <ORIGIN TRIAL TOKEN>
    
  3. Sie haben zwei Möglichkeiten, Cookies das Attribut Partitioned hinzuzufügen:

    • Im Set-Cookie-Header:

      Set-Cookie: __Host-name=value; Secure; Path=/; SameSite=None; Partitioned;
      
    • In JavaScript:

      cookieStore.set({
      name: '__Host-name',
      value: 'value',
      secure: true,
      path: '/',
      sameSite: 'none',
      // Set a partitioned cookie using the attribute below.
      partitioned: true,
      });
      

Beispiel

Websites, die am Ursprungstest teilnehmen, müssen die folgenden Header in der Antwort angeben:

Origin-Trial: <ORIGIN TRIAL TOKEN>
Set-Cookie: __Host-name=value; Secure; Path=/; SameSite=None; Partitioned;

Funktion überprüfen

Header prüfen

Wenn Sie den Ursprungstest erfolgreich aktiviert und ein partitioniertes Cookie festgelegt haben, enthalten nachfolgende Anfragen vom Chrome-Client den Anfrageheader Sec-CH-Partitioned-Cookies: ?0, bis die aktuelle Sitzung beendet ist.

Sec-CH-Partitioned-Cookies: ?0
Cookie: __Host-name=value

Wenn Ihre Website das Cookie ohne diesen Clienthinweis empfängt, war die Anmeldung für den Ursprungstest nicht erfolgreich und das erhaltene Cookie wird nicht partitioniert.

Antworten, die keinen Set-Cookie-Header mit Partitioned enthalten, wirken sich nicht auf den Teilnahmestatus einer Website am Ursprungstest aus.

Wenn Sie kein gültiges Token im Origin-Trial-Header angeben, werden die partitionierten Cookies auf dem Computer in nicht partitionierte Cookies umgewandelt.

Weitere Informationen finden Sie in der CHIPS-Dokumentation auf chromium.org.

DevTools

  1. Rufen Sie chrome://flags/#partitioned-cookies auf und ändern Sie die Einstellung in „Aktiviert“.
  2. Starten Sie Chromium neu, indem Sie unten rechts auf die Schaltfläche „Neu starten“ klicken oder chrome://restart aufrufen.
  3. Rufe chrome://settings/cookies auf und prüfe, ob das Optionsfeld „Alle Cookies zulassen“ oder „Drittanbieter-Cookies im Inkognitomodus blockieren“ ausgewählt ist.
  4. Lade die Website mit der eingebetteten App.
  5. Öffnen Sie die Entwicklertools, öffnen Sie Anwendung > Cookies > IhreWebsite und suchen Sie in den Entwicklertools nach der Spalte Partition Key (Partitionsschlüssel).

Weitere Informationen

Anforderungen für Cookies

  • Partitionierte Cookies müssen mit der Secure festgelegt werden. (Path=/ wird nicht mehr benötigt: siehe github.com/privacycg/CHIPS/pull/49).
  • Das Attribut „SameParty“ kann nicht zusammen mit „Partitioned.“ verwendet werden

Chrome erzwingt diese Regeln für Cookies, die mit dem Attribut Partitioned festgelegt wurden, unabhängig davon, ob die Cookie-Partitionierung aktiviert oder deaktiviert ist. Cookies, die falsch gesetzt sind, werden abgelehnt.

Wenn die Cookie-Partitionierung deaktiviert ist, aber das Cookie mit den richtigen Attributen gesetzt ist, ignoriert Chrome das Attribut Partitioned. Das resultierende Cookie wird trotzdem in Anfragen an seinen Host auf anderen Websites der obersten Ebene gesendet, als dort festgelegt wurde.

Partitionierte Cookies sollten auch das Attribut SameSite=None enthalten, damit Cookies im Zusammenhang mit Drittanbietern in Browsern gesendet werden können, die keine Cookie-Partitionierung unterstützen.

JavaScript und Service Worker

Frames, die sich für den Ursprungstest anmelden, haben Zugriff auf das Lesen und Schreiben von partitionierten Cookies mithilfe von JavaScript APIs wie document.cookie und der CookieStore API. Frames, die nicht in den Skripts der Testversion enthalten sind, können keine partitionierten Cookies lesen oder schreiben.

Der CHIPS-Ursprungstest wird in Service Workern nicht unterstützt.

Interagieren und Feedback geben