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 dieser Header bietet, schauen Sie sich die frame-ancestors Direktive im Content-Security-Policy Header an.

Der HTTP X-Frame-Options Antwort-Header kann verwendet werden, um anzugeben, ob ein Browser das Dokument in einem <frame>, <iframe>, <embed> oder <object> rendern darf. Websites können dies verwenden, um Clickjacking-Angriffe und einige Cross-Site Leaks zu vermeiden, indem sie sicherstellen, dass ihre Inhalte nicht in andere Websites eingebettet werden.

Wenn dieser Header nicht gesendet wird und die Website keine anderen Mechanismen implementiert hat, um das Einbetten einzuschränken (wie die frame-ancestors CSP-Direktive), dann ermöglicht der Browser anderen Websites, dieses Dokument einzubetten.

Header-Typ Antwort-Header

Syntax

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

Direktiven

DENY

Das Dokument kann in keinem Frame geladen werden, unabhängig von der Herkunft (sowohl gleichartige als auch übergreifende Einbettung wird blockiert).

SAMEORIGIN

Das Dokument kann nur eingebettet werden, wenn alle übergeordneten Frames denselben Ursprung wie die Seite selbst haben.

ALLOW-FROM origin Veraltet

Dies ist eine veraltete Direktive. Moderne Browser, die Antwort-Header mit dieser Direktive finden, ignorieren den Header komplett. Der Content-Security-Policy HTTP-Header hat eine frame-ancestors Direktive, die stattdessen verwendet werden sollte.

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 durchgesetzt, wie in den unten stehenden Beispielen gezeigt.

Konfiguration von Apache

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

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

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

apacheconf
Header set X-Frame-Options "DENY"

Konfiguration von Nginx

Um Nginx zu konfigurieren, den X-Frame-Options Header zu senden, fügen Sie dies entweder zu Ihrer http-, Server- oder Standortkonfiguration 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;

Konfiguration von IIS

Um IIS zu konfigurieren, den X-Frame-Options Header zu senden, fügen Sie dies zur 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 sehen Sie den Microsoft Supportartikel über das Setzen dieser Konfiguration mit der IIS Manager Benutzeroberfläche.

Konfiguration von HAProxy

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

rspadd X-Frame-Options:\ SAMEORIGIN

Alternativ in neueren Versionen:

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

Konfiguration von Express

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

js
import helmet from "helmet";

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

Spezifikationen

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

Browser-Kompatibilität

Siehe auch