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

View in English Always switch to English

X-Frame-Options header

Hinweis: Für umfassendere Optionen als die, die durch diesen Header angeboten werden, siehe die frame-ancestors Direktive in einem Content-Security-Policy Header.

Der HTTP X-Frame-Options Antwort-Header kann verwendet werden, um anzugeben, ob ein Browser erlaubt werden soll, eine Seite in einem <frame>, <iframe>, <embed> oder <object> darzustellen. Websites können dies nutzen, um Clickjacking Angriffe zu vermeiden, indem sie sicherstellen, dass ihre Inhalte nicht in andere Websites eingebettet werden.

Die zusätzliche Sicherheit wird nur bereitgestellt, wenn der Benutzer, der auf das Dokument zugreift, einen Browser verwendet, der X-Frame-Options unterstützt.

Header-Typ Antwort-Header

Syntax

http
X-Frame-Options: DENY
X-Frame-Options: SAMEORIGIN

Direktiven

DENY

Die Seite kann in keinem Frame angezeigt werden, unabhängig von der Website, die versucht, dies zu tun. Nicht nur wird der Versuch des Browsers, die Seite in einem Frame zu laden, fehlschlagen, wenn sie von anderen Websites geladen wird; auch Versuche, dies von derselben Website zu tun, werden fehlschlagen.

SAMEORIGIN

Die Seite kann nur angezeigt werden, wenn alle übergeordneten Frames denselben Ursprung wie die Seite selbst haben. Sie können die Seite weiterhin in einem Frame verwenden, solange die Seite, die sie in einem Frame einbettet, dieselbe ist, die die Seite liefert.

ALLOW-FROM origin Veraltet

Dies ist eine veraltete Direktive. Moderne Browser, die Antwort-Header mit dieser Direktive vorfinden, werden den Header vollständig ignorieren. Der Content-Security-Policy HTTP-Header hat eine frame-ancestors Direktive, die Sie stattdessen verwenden sollten.

Beispiele

Warnung: Das Setzen von X-Frame-Options innerhalb des <meta> Elements (z.B. <meta http-equiv="X-Frame-Options" content="deny">) hat keine Wirkung. X-Frame-Options wird nur über HTTP-Header erzwungen, wie in den folgenden Beispielen gezeigt.

Apache konfigurieren

Um Apache zu konfigurieren, den X-Frame-Options Header für alle Seiten zu senden, fügen Sie dies zur Konfiguration Ihrer Website hinzu:

apacheconf
Header always set X-Frame-Options "SAMEORIGIN"

Um Apache zu konfigurieren, X-Frame-Options auf DENY zu setzen, fügen Sie dies zur Konfiguration Ihrer Website hinzu:

apacheconf
Header set X-Frame-Options "DENY"

Nginx konfigurieren

Um Nginx zu konfigurieren, den X-Frame-Options Header zu senden, fügen Sie dies entweder Ihrer http-, server- oder location-Konfiguration hinzu:

nginx
add_header X-Frame-Options SAMEORIGIN always;

Sie können den X-Frame-Options Header auf DENY setzen mit:

nginx
add_header X-Frame-Options DENY always;

IIS konfigurieren

Um IIS zu konfigurieren, den X-Frame-Options Header zu senden, fügen Sie dies der Web.config Datei Ihrer Website hinzu:

xml
<system.webServer>
  …
  <httpProtocol>
    <customHeaders>
      <add name="X-Frame-Options" value="SAMEORIGIN" />
    </customHeaders>
  </httpProtocol>
  …
</system.webServer>

Für weitere Informationen siehe den Microsoft Support-Artikel über die Konfiguration mit der IIS Manager Benutzeroberfläche.

HAProxy konfigurieren

Um HAProxy zu konfigurieren, den X-Frame-Options Header zu senden, fügen Sie dies Ihrer Frontend-, Listen- oder Backend-Konfiguration hinzu:

rspadd X-Frame-Options:\ SAMEORIGIN

Alternativ in neueren Versionen:

http-response set-header X-Frame-Options SAMEORIGIN

Express konfigurieren

Um X-Frame-Options auf SAMEORIGIN mit Helmet zu setzen, fügen Sie Folgendes zur Serverkonfiguration hinzu:

js
import helmet from "helmet";

const app = express();
app.use(
  helmet({
    xFrameOptions: { action: "sameorigin" },
  }),
);

Spezifikationen

Specification
HTML
# the-x-frame-options-header

Browser-Kompatibilität

Siehe auch