Manifest - Sandbox

Avviso:a partire dalla versione 57, Chrome non consentirà più contenuti web esterni (inclusi frame e script incorporati) all'interno di pagine con sandbox. Usa invece una webView.

Definisce una raccolta di pagine di app o estensioni da pubblicare in un'origine univoca con sandbox, e facoltativamente un criterio di sicurezza del contenuto da utilizzare. Essere all'interno di una sandbox ha due implicazioni:

  1. Una pagina con sandbox non avrà accesso alle API delle estensioni o delle app né potrà accedere direttamente alle pagine senza sandbox (potrebbe comunicare con queste pagine tramite postMessage()).
  2. Una pagina con sandbox non è soggetta ai Criteri di sicurezza del contenuto (CSP) utilizzati dal resto di: L'app o l'estensione (ha un proprio valore CSP separato). Ciò significa che, ad esempio, può usano script incorporato e eval.

    Ad esempio, ecco come specificare che due pagine di estensione devono essere pubblicate in una sandbox con un CSP personalizzato:

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

    Se non specificato, il valore predefinito di content_security_policy è sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self';. Puoi specificare il valore CSP per limitare ulteriormente la sandbox, ma deve avere il valore sandbox e potrebbe non avere il token allow-same-origin (vedi la guida HTML5 specifica per i possibili token sandbox). Inoltre, il CSP specificato potrebbe non consentire il caricamento contenuti web esterni all'interno di pagine con sandbox.

Tieni presente che devi elencare solo le pagine che prevedi di caricare in finestre o frame. Risorse utilizzati dalle pagine con sandbox (ad es. i fogli di stile o i file sorgente JavaScript) non devono necessariamente comparire nel sandboxed_page, useranno la sandbox della pagina in cui li incorpora.

"Utilizzo di eval nelle estensioni di Chrome. Sicuramente". approfondisce l'implementazione di una un flusso di lavoro di sandboxing, che consente l'uso di librerie che altrimenti avrebbero problemi di esecuzione Criterio di sicurezza del contenuto predefinito dell'estensione.

La pagina con sandbox può essere specificata solo se si utilizza manifest_version 2 o versioni successive.