Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Sec-Fetch-Site header

Baseline Weitgehend verfügbar

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit März 2023 browserübergreifend verfügbar.

Der HTTP-Sec-Fetch-Site-Fetch-Metadaten-Anforderungsheader gibt die Beziehung zwischen dem Ursprung eines Anforderungsinitiators und dem Ursprung der angeforderten Ressource an.

Mit anderen Worten, dieser Header teilt einem Server mit, ob eine Anforderung für eine Ressource vom gleichen Ursprung, derselben Seite, einer anderen Seite stammt oder eine "vom Benutzer initiierte" Anforderung ist. Der Server kann diese Informationen dann verwenden, um zu entscheiden, ob die Anforderung erlaubt werden soll.

Anforderungen vom gleichen Ursprung würden normalerweise standardmäßig erlaubt werden, aber was für Anforderungen von anderen Ursprüngen geschieht, kann weiter davon abhängen, welche Ressource angefordert wird oder von Informationen in einem anderen Fetch-Metadaten-Anforderungsheader. Standardmäßig sollten nicht akzeptierte Anforderungen mit einem 403-Antwortcode abgelehnt werden.

Header-Typ Fetch-Metadaten-Anforderungsheader
Verbotener Anforderungsheader Ja (Sec--Präfix)
CORS-safelisted Anforderungsheader Nein

Syntax

http
Sec-Fetch-Site: cross-site
Sec-Fetch-Site: same-origin
Sec-Fetch-Site: same-site
Sec-Fetch-Site: none

Direktiven

cross-site

Der Anforderungsinitiator und der Server, der die Ressource hostet, haben eine unterschiedliche Seite (d.h. eine Anforderung von "potentially-evil.com" für eine Ressource bei "example.com").

same-origin

Der Anforderungsinitiator und der Server, der die Ressource hostet, haben denselben Ursprung (dasselbe Schema, Host und Port).

same-site

Der Anforderungsinitiator und der Server, der die Ressource hostet, haben dieselbe Site, einschließlich des Schemas.

none

Diese Anforderung ist ein vom Benutzer initiiertes Vorgang. Zum Beispiel: Eingabe einer URL in die Adressleiste, Öffnen eines Lesezeichens oder Drag-and-Drop einer Datei in das Browserfenster.

Beispiele

Eine Fetch-Anforderung an https://mysite.example/foo.json, die von einer Webseite auf https://mysite.example (mit demselben Port) stammt, ist eine Same-Origin-Anforderung. Der Browser generiert den Sec-Fetch-Site: same-origin-Header wie unten gezeigt, und der Server wird die Anforderung in der Regel zulassen:

http
GET /foo.json
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: same-origin

Eine Fetch-Anforderung an dieselbe URL von einer anderen Seite, beispielsweise potentially-evil.com, veranlasst den Browser, einen anderen Header zu generieren (z. B. Sec-Fetch-Site: cross-site), den der Server akzeptieren oder ablehnen kann:

http
GET /foo.json
Sec-Fetch-Dest: empty
Sec-Fetch-Mode: cors
Sec-Fetch-Site: cross-site

Spezifikationen

Spezifikation
Fetch Metadata Request Headers
# sec-fetch-site-header

Browser-Kompatibilität

Siehe auch