Aviso:a partir da versão 57, o Chrome não vai mais permitir conteúdo da Web externo (incluindo frames e scripts incorporados) em páginas no modo sandbox. Use uma WebView.
Define uma coleção de páginas de apps ou extensões que serão veiculadas em uma origem exclusiva no modo sandbox e, opcionalmente, uma política de segurança de conteúdo para usar com elas. Estar no modo sandbox tem duas implicações:
- Uma página no modo sandbox não terá acesso a APIs de extensão ou app nem acesso direto a páginas fora do modo sandbox. Ela pode se comunicar com elas usando
postMessage(). Uma página no modo sandbox não está sujeita à política de segurança de conteúdo (CSP) usada pelo restante do app ou extensão. Ela tem um valor de CSP separado. Isso significa que, por exemplo, ela pode usar script inline e
eval.Por exemplo, veja como especificar que duas páginas de extensão serão veiculadas em um sandbox com uma CSP personalizada:
{ ... "sandbox": { "pages": [ "page1.html", "directory/page2.html" ] // content_security_policy is optional. "content_security_policy": "sandbox allow-scripts; script-src 'self'" ], ... }Se não for especificado, o valor padrão de
content_security_policyésandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';. Você pode especificar o valor da CSP para restringir ainda mais o sandbox, mas ele precisa ter asandboxdiretiva e não pode ter oallow-same-origintoken. Consulte a especificação HTML5 para ver os possíveis tokens de sandbox. Além disso, a CSP especificada não pode permitir o carregamento de conteúdo da Web externo em páginas no modo sandbox.
Só é necessário listar as páginas que você espera que sejam carregadas em janelas ou frames. Os recursos usados por páginas no modo sandbox (por exemplo, arquivos de origem de folhas de estilo ou JavaScript) não precisam aparecer na lista sandboxed_page. Eles vão usar o sandbox da página que os incorpora.
"Usar eval em extensões do Chrome. Com segurança." explica com mais detalhes como implementar um fluxo de trabalho de sandbox que permite o uso de bibliotecas que, de outra forma, teriam problemas de execução na política de segurança de conteúdo padrão da extensão.
A página no modo sandbox só pode ser especificada ao usar manifest_version 2 ou mais recente.