清单 - 沙盒

警告:从版本 57 开始,Chrome 将不再允许使用外部 Web 内容(包括 嵌入式框架和脚本)。请改用网页视图

定义要在沙盒化的唯一源中提供的一组应用或扩展程序页面。 以及要与它们搭配使用的内容安全政策处于沙盒中有两个影响:

  1. 沙盒化网页无法访问扩展程序/应用 API,也无法直接访问 未经过沙盒屏蔽的网页(可以通过 postMessage() 与这些网页进行通信)。
  2. 沙盒化页面不受其余组件所使用的内容安全政策 (CSP) 的约束 应用或扩展程序(具有自己单独的 CSP 值)。也就是说,它可以 使用内嵌脚本和 eval

    例如,以下代码展示了如何指定在具有 自定义 CSP:

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

    如果未指定,则默认的 content_security_policy 值为 sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';。 您可以指定 CSP 值进一步限制沙盒,但该值必须具有 sandbox 指令,并且不能具有 allow-same-origin 令牌(请参阅 HTML5 规范。此外,您指定的 CSP 可能不允许加载 访问沙盒页面

请注意,您只需列出预期会在窗口或框架中加载的网页即可。资源 而不需要出现在 sandboxed_page 列表中,它们将使用嵌入它们的页面的沙盒。

“在 Chrome 扩展程序中使用 eval。详细介绍如何实现 此工作流可让您使用在 Google Cloud 上执行时会出现问题的库, 扩展程序的默认内容安全政策

仅当使用 manifest_version 2 或更高版本时,才能指定沙盒化页面。