Content-Security-Policy: sandbox-Direktive
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since November 2016.
Die HTTP Content-Security-Policy (CSP) sandbox-Direktive ermöglicht ein Sandbox für die angeforderte Ressource ähnlich wie das <iframe> sandbox Attribut.
Sie wendet Beschränkungen auf die Aktionen einer Seite an, einschließlich der Verhinderung von Popups, der Verhinderung der Ausführung von Plugins und Skripten und der Durchsetzung einer Same-Origin-Policy.
| CSP-Version | 1.1 / 2 |
|---|---|
| Direktivtyp | Dokumentdirektive |
Diese Direktive wird nicht im <meta>-Element oder durch das Content-Security-policy-Report-Only Header-Feld unterstützt.
|
|
Syntax
Content-Security-Policy: sandbox;
Content-Security-Policy: sandbox <value>;
wobei <value> optional einer der folgenden Werte sein kann:
allow-downloads-
Ermöglicht das Herunterladen von Dateien über ein
<a>oder<area>-Element mit dem download Attribut sowie durch Navigation, die zum Herunterladen einer Datei führt. Das funktioniert unabhängig davon, ob der Benutzer auf den Link geklickt hat oder ob es durch JS-Code ohne Benutzerinteraktion initiiert wurde. allow-forms-
Erlaubt der Seite, Formulare abzuschicken. Wenn dieses Schlüsselwort nicht verwendet wird, wird das Formular normal angezeigt, aber das Abschicken löst keine Eingabevalidierung, das Senden von Daten an einen Webserver oder das Schließen eines Dialogs aus.
allow-modals-
Erlaubt der Seite das Öffnen von Modalfenstern durch
Window.alert(),Window.confirm(),Window.print()undWindow.prompt(), während das Öffnen eines<dialog>grundsätzlich erlaubt ist. Es erlaubt auch, dass die Seite dasBeforeUnloadEventEreignis empfangen kann. allow-orientation-lock-
Ermöglicht der Ressource das Sperren der Bildschirmausrichtung.
allow-pointer-lock-
Erlaubt der Seite die Nutzung der Pointer Lock API.
allow-popups-
Erlaubt Popups (erstellt beispielsweise durch
Window.open()odertarget="_blank"). Wenn dieses Schlüsselwort nicht verwendet wird, schlägt die Anzeige von Popups stillschweigend fehl. allow-popups-to-escape-sandbox-
Erlaubt einem sandboxed Dokument, neue Fenster zu öffnen, ohne die Sandboxing-Flags auf sie anzuwenden. Dies ermöglicht zum Beispiel, dass eine Drittanbieter-Werbung sicher gesandboxt wird, ohne die gleichen Einschränkungen auf die Seite anzuwenden, zu der die Anzeige verlinkt.
allow-presentation-
Erlaubt Embedders die Kontrolle darüber, ob ein iframe eine Präsentationssitzung starten kann.
allow-same-origin-
Erlaubt einer sandboxed Ressource, ihren Ursprung beizubehalten. Eine sandboxed Ressource wird ansonsten als von einem opaken Ursprung stammend behandelt, was sicherstellt, dass sie immer die Überprüfungen der Same-Origin-Policy nicht bestehen kann und daher keinen Zugriff auf
localstorageunddocument.cookieund einige JavaScript-APIs hat. DieOriginvon sandboxed Ressourcen ohne dasallow-same-originSchlüsselwort istnull. allow-scripts-
Erlaubt der Seite das Ausführen von Skripten (aber nicht das Erstellen von Pop-up-Fenstern). Wenn dieses Schlüsselwort nicht verwendet wird, ist diese Operation nicht erlaubt.
allow-storage-access-by-user-activationExperimentell-
Ermöglicht der Ressource den Zugriff auf die Speicherfähigkeiten des übergeordneten Elements mit der Storage Access API anzufordern.
-
Erlaubt der Ressource, den obersten Browsing-Kontext (den als
_topbezeichneten) zu navigieren. -
Erlaubt der Ressource die Navigation des obersten Browsing-Kontextes, jedoch nur, wenn dies durch eine Benutzeraktion initiiert wird.
-
Erlaubt die Navigation zu nicht-
http-Protokollen, die im Browser eingebaut oder von einer Website registriert wurden. Diese Funktion wird auch durch das Schlüsselwortallow-popupsoderallow-top-navigationaktiviert.
Hinweis:
Die Schlüsselwörter allow-top-navigation und verwandte Werte sind nur für eingebettete Dokumente (z.B. kind-iframe) sinnvoll. Für eigenständige Dokumente haben diese Werte keine Wirkung, da der oberste Browsing-Kontext das Dokument selbst ist.
Beispiele
Content-Security-Policy: sandbox allow-scripts;
Spezifikationen
| Specification |
|---|
| Content Security Policy Level 3> # directive-sandbox> |
Browser-Kompatibilität
Loading…
Siehe auch
Content-Security-PolicysandboxAttribut bei<iframe>Elementen