İzinleri bildirme

Çoğu uzantı API'sini ve özelliğini kullanmak için manifest'in izin alanlarında uzantınızın amacını beyan etmeniz gerekir. Uzantılar, ilgili manifest anahtarları kullanılarak belirtilen aşağıdaki izin kategorilerini isteyebilir:

"permissions"
Bilinen dizeler listesinden öğeler içerir. Değişiklikler bir uyarı tetikleyebilir.
"optional_permissions"
Kullanıcı tarafından yükleme sırasında değil, çalışma zamanında verilir.
"content_scripts.matches"
İçerik komut dosyalarının bir veya daha fazla ana makineye yerleştirilmesine olanak tanıyan bir veya daha fazla eşleşme kalıbı içerir. Değişiklikler bir uyarı tetikleyebilir.
"host_permissions"
Bir veya daha fazla ana makineye erişim sağlayan bir veya daha fazla eşleşme kalıbı içerir. Değişiklikler bir uyarı tetikleyebilir.
"optional_host_permissions"
Kullanıcı tarafından yükleme sırasında değil, çalışma zamanında verilir.

İzinler, kötü amaçlı yazılımdan dolayı uzantınızın güvenliği ihlal edilirse hasarın sınırlanmasına yardımcı olur. Kullanıcılara, doğrulama işleminden önce rıza vermeleri için bazı izin uyarıları gösterilir. Uyarı içeren izin bölümünde ayrıntılı olarak açıklandığı şekilde yükleme sırasında veya çalışma zamanında istenen verileri geri yüklenebilir.

Uzantınızın işlevselliğinin olduğu her yerde isteğe bağlı izinleri kullanabilirsiniz kullanıcıların kaynaklara ve verilere erişim üzerinde bilinçli kontrol olanağı sağlar.

API için izin gerekiyorsa API'nin nasıl tanımlanacağı, API'nin dokümanlarında açıklanır. Örneğin, Storage API bölümüne bakın.

Manifest

Aşağıda, bir manifest dosyasının izinler bölümüne bir örnek verilmiştir:

manifest.json:

{
  "name": "Permissions Extension",
  ...
  "permissions": [
    "activeTab",
    "contextMenus",
    "storage"
  ],
  "optional_permissions": [
    "topSites",
  ],
  "host_permissions": [
    "https://www.developer.chrome.com/*"
  ],
  "optional_host_permissions":[
    "https://*/*",
    "http://*/*"
  ],
  ...
  "manifest_version": 3
}

Ana makine izinleri

Ana makine izinleri, uzantıların URL'nin eşleşme kalıplarıyla etkileşimde bulunmasına olanak tanır. Bazı Chrome API'leri, her referans sayfasında açıklandığı gibi kendi API izinlerine ek olarak ana makine izinlerine de ihtiyaç duyar. Aşağıda bazı örnekler verilmiştir:

Uyarı içeren izinler

Bir uzantı birden fazla izin istediğinde ve bunların birçoğu gösterildiğinde uyarı görürseniz aşağıdaki örnekteki gibi bir uyarılar listesi görür:

Yükleme sırasında uzantı izni uyarıları

Kullanıcıların sınırlı uyarılarla veya izinler açıklandığında uzantıya güvenme olasılığı daha yüksektir kabul eder. Alarm kullanmamak için isteğe bağlı izinleri veya daha az güçlü bir API'yi uygulamayı düşünün. uyarılar. Uyarılarla ilgili en iyi uygulamalar için İzin uyarıları yönergeleri başlıklı makaleyi inceleyin. Belirli uyarıları, tablodaki uyarıların geçerli olduğu İzinler referans listesi.

"host_permissions" ve "content_scripts.matches" içinde eşleşme kalıbı ekleme veya değiştirme alanları da bir uyarı tetikler. Daha fazla bilgi edinmek için bkz. İzinleri güncelleme.

Erişim izni ver

Uzantınızın file:// URL'lerinde veya gizli modda çalışması gerekiyorsa kullanıcılar, ayrıntılar sayfasında uzantıya erişim vermelidir. Ayrıntılar sayfasını açmayla ilgili talimatları Uzantılarınızı yönetme bölümünde bulabilirsiniz.

Dosya URL'lerine ve gizli sayfalara erişime izin ver

  1. Chrome'da uzantı simgesini sağ tıklayın.
  2. Uzantıyı Yönet'i seçin.

    Uzantı içerik menüsü
    Uzantı menüsü
  3. Dosya URL'lerine erişimi veya gizli moda erişimi etkinleştirmek için sayfayı aşağı kaydırın.

    Uzantı ayrıntıları sayfasında dosya URL'lerine ve gizli moda izin ver
    Dosya URL'lerine erişim ve gizli mod etkinleştirildi.

Kullanıcının erişime izin verip vermediğini belirlemek için extension.isAllowedIncognitoAccess() veya extension.isAllowedFileSchemeAccess().