Manifest - Korumalı Alan

Korumalı alana alınmış benzersiz bir kaynakta sunulacak uzantı sayfaları koleksiyonunu tanımlar. Bir uzantının korumalı alana alınmış sayfaları tarafından kullanılan İçerik Güvenliği Politikası "content_security_policy" anahtarında belirtilir.

Korumalı alanda olmanın iki etkisi vardır:

  1. Korumalı alan kapsamındaki bir sayfa, uzantı API'lerine veya korumalı alanda olmayan sayfalara doğrudan erişemez (postMessage() kullanarak bu sayfalarla iletişim kurabilir).
  2. Korumalı alana alınmış bir sayfa, uzantının geri kalanı tarafından kullanılan İçerik Güvenliği Politikası'na (CSP) tabi değildir (kendi ayrı CSP değeri vardır). Bu, örneğin satır içi komut dosyası ve eval() kullanabilir.

Örneğin, iki uzantı sayfasının özel bir CSP ile korumalı alanda sunulmasının nasıl belirtileceği aşağıda açıklanmıştır:

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

Herhangi bir değer belirtilmediyse varsayılan "content_security_policy" değeri sandbox allow-scripts allow-forms allow-popups allow-modals; script-src 'self' 'unsafe-inline' 'unsafe-eval'; child-src 'self'; olur.

Korumalı alanı daha da kısıtlamak için CSP değerinizi belirtebilirsiniz ancak bu değer "sandbox" yönergesini içermeli ve allow-same-origin jetonuna sahip OLMAMALIDIR (olası korumalı alan jetonları için HTML5 spesifikasyonuna bakın).

Yalnızca pencerelerde veya çerçevelerde yüklenmesini beklediğiniz sayfaları listelemeniz gerektiğini unutmayın. Korumalı alana alınmış sayfalar tarafından kullanılan kaynakların (ör.stil sayfaları veya JavaScript kaynak dosyaları) pages listesinde görünmesine gerek yoktur. Bu kaynaklar, bunları yerleştiren çerçevenin korumalı alanını kullanır.

"Chrome Uzantılarında eval() kullanımı" bölümünde, uzantının varsayılan İçerik Güvenliği Politikası uyarınca yürütülürken sorun yaşanacak kitaplıkların kullanımına olanak tanıyan bir korumalı alan iş akışının uygulanması hakkında daha ayrıntılı bilgi verilmektedir.