Manifest – Sandbox

Warnung:Ab Version 57 sind externe Webinhalte nicht mehr in Chrome zulässig, darunter auch eingebettete Frames und Skripts) innerhalb von Sandbox-Seiten. Verwenden Sie stattdessen eine Webansicht.

Definiert eine Sammlung von App- oder Erweiterungsseiten, die in einem eindeutigen Sandbox-Ursprung bereitgestellt werden. und optional eine Content Security Policy zur Verwendung mit ihnen verwenden. Die Verwendung in einer Sandbox hat zwei Auswirkungen:

  1. Eine in einer Sandbox ausgeführte Seite hat keinen Zugriff auf Erweiterungs- oder App-APIs und hat auch keinen direkten Zugriff auf Seiten ohne Sandbox. Diese kommunizieren möglicherweise über postMessage() mit ihnen.
  2. Eine Seite, die in einer Sandbox ausgeführt wird, unterliegt nicht der Content Security Policy (CSP), die vom Rest der die App oder Erweiterung (sie hat einen eigenen CSP-Wert). Das bedeutet, dass es zum Beispiel Verwenden Sie Inline-Script und eval.

    So können Sie beispielsweise festlegen, dass zwei Erweiterungsseiten in einer Sandbox mit einem benutzerdefinierte CSP:

    {
      ...
      "sandbox": {
        "pages": [
          "page1.html",
          "directory/page2.html"
        ]
        // content_security_policy is optional.
        "content_security_policy":
            "sandbox allow-scripts; script-src 'self'"
      ],
      ...
    }
    

    Wenn keine Angabe erfolgt, lautet der Standardwert für content_security_policy sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';. Sie können Ihren CSP-Wert angeben, um die Sandbox noch weiter einzuschränken, aber sie muss die sandbox-Anweisung und möglicherweise nicht das allow-same-origin-Token enthalten (siehe HTML5 Spezifikation für mögliche Sandbox-Tokens. Außerdem lässt die angegebene CSP möglicherweise das Laden nicht zu. Externe Webinhalte auf Seiten, die in einer Sandbox ausgeführt werden.

Beachten Sie, dass Sie nur Seiten auflisten müssen, die eigentlich in Windows oder Frames geladen wurden. Ressourcen Seiten, die in einer Sandbox verwendet werden (z.B. Stylesheets oder JavaScript-Quelldateien), müssen nicht im sandboxed_page-Liste verwendet, wird die Sandbox der Seite verwendet, in der sie eingebettet sind.

„Eval in Chrome-Erweiterungen verwenden. sicher.“ erfahren Sie mehr über die Implementierung eines Sandboxing-Workflow, der die Verwendung von Bibliotheken ermöglicht, bei denen andernfalls Probleme auftreten würden. der standardmäßigen Content Security Policy der Erweiterung.

Die in einer Sandbox ausgeführte Seite darf nur bei Verwendung von manifest_version 2 oder höher angegeben werden.