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 von diesem 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 das Dokument in einem <frame>, <iframe>, <embed> oder <object> rendern darf. Websites können dies nutzen, um Clickjacking Angriffe und einige Cross-Site Leaks zu vermeiden, indem sie sicherstellen, dass ihre Inhalte nicht in andere Seiten eingebettet werden.

Wenn dieser Header nicht gesendet wird und die Website keine anderen Mechanismen zur Einschränkung des Einbettens implementiert hat (wie die frame-ancestors CSP-Direktive), dann erlaubt der Browser anderen Seiten, dieses Dokument einzubetten.

Header-Typ Antwort-Header

Syntax

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

Direktiven

DENY

Das Dokument kann in keinem Rahmen geladen werden, unabhängig von der Herkunft (sowohl gleich- als auch herkunftsübergreifendes Einbetten wird blockiert).

SAMEORIGIN

Das Dokument kann nur eingebettet werden, wenn alle übergeordneten Rahmen dieselbe Herkunft wie die Seite selbst haben.

ALLOW-FROM origin

Dies ist eine veraltete Direktive. Moderne Browser ignorieren Kopfzeilen mit dieser Direktive vollständig. 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 durchgesetzt, wie in den Beispielen unten gezeigt.

Konfiguration von Apache

Um Apache so zu konfigurieren, dass der X-Frame-Options-Header für alle Seiten gesendet wird, fügen Sie dies zur Konfiguration Ihrer Website hinzu:

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

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

apacheconf
Header set X-Frame-Options "DENY"

Konfiguration von Nginx

Um Nginx so zu konfigurieren, dass der X-Frame-Options-Header gesendet wird, fügen Sie dies entweder zur http-, Server- oder Standortkonfiguration hinzu:

nginx
add_header X-Frame-Options SAMEORIGIN always;

Sie können den X-Frame-Options-Header auf DENY setzen, indem Sie folgendes verwenden:

nginx
add_header X-Frame-Options DENY always;

Konfiguration von IIS

Um IIS so zu konfigurieren, dass der X-Frame-Options-Header gesendet wird, 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 siehe den Microsoft Support-Artikel zur Konfiguration über die IIS Manager-Benutzeroberfläche.

Konfiguration von HAProxy

Um HAProxy so zu konfigurieren, dass der X-Frame-Options-Header gesendet wird, 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

Konfiguration von Express

Um X-Frame-Options auf SAMEORIGIN zu setzen, verwenden Sie Helmet und fügen folgendes zur 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