Manifest aktualisieren

V2-Manifest in ein V3-Manifest konvertieren

Die Datei „manifest.json“ erfordert ein etwas anderes Format für Manifest V3 als für Manifest V2. Auf dieser Seite werden Änderungen beschrieben, die nur die Datei manifest.json betreffen. Viele der Änderungen an Skripts und Seiten erfordern jedoch auch Änderungen am Manifest. Diese Änderungen werden durch die Migrationsaufgaben abgedeckt, für die sie erforderlich sind.

Versionsnummer des Manifests ändern

Ändern Sie den Wert des Felds "manifest_version" von 2 in 3.

Manifest V2
{
  ...
  "manifest_version": 2
  ...
}
Manifest V3
{
  ...
  "manifest_version": 3
  ...
}

Hostberechtigungen aktualisieren

Hostberechtigungen in Manifest V3 sind ein separates Feld. Sie legen sie nicht in "permissions" oder "optional_permissions" fest.

Inhaltsskripts verbleiben unter "content_scripts.matches". Weitere Informationen zu "content_scripts.matches" finden Sie unter Mit statischen Deklarationen einfügen.

Manifest V2
{
  ...
  "permissions": [
    "tabs",
    "bookmarks",
    "https://www.blogger.com/",
  ],
  "optional_permissions": [
    "unlimitedStorage",
    "*://*/*",
  ]
  ...
}
Manifest V3
{
  ...
  "permissions": [
    "tabs",
    "bookmarks"
  ],
  "optional_permissions": [
    "unlimitedStorage"
  ],
  "host_permissions": [
    "https://www.blogger.com/",
  ],
  "optional_host_permissions": [
    "*://*/*",
  ]
  ...
}

Über das Web zugängliche Ressourcen aktualisieren

Über das Internet zugängliche Ressourcen sind Dateien innerhalb einer Erweiterung, auf die über Webseiten oder andere Erweiterungen zugegriffen werden kann. Wie in Manifest V2 implementiert, wurden durch das Feld „"web_accessible_resources"“ Erweiterungen von Websites und Angreifern erkannt, falls die Erweiterung Ressourcen preisgegeben hat. Dies führte zu Möglichkeiten für Fingerprinting oder unbeabsichtigter Ressourcenzugriff.

Manifest V3 schränkt die Offenlegung ein, indem einschränkt, welche Websites und Erweiterungen auf Ressourcen in Ihrer Erweiterung zugreifen können. Anstatt wie zuvor eine Liste von Dateien bereitzustellen, stellen Sie jetzt ein Array mit Objekten bereit, von denen jedes einer Gruppe von URLs oder Erweiterungs-IDs eine Gruppe von Ressourcen zuordnet.

Im folgenden Beispiel werden über das Web zugängliche Ressourcen zwischen Manifest V2 und Manifest V3 verglichen. In Manifest V2 waren die angegebenen Ressourcen standardmäßig für alle Websites zugänglich. Im unten gezeigten Manifest V3-Code sind diese Ressourcen nur für https://example.com und nur bestimmte Bilder für alle Websites verfügbar.

Weitere Informationen finden Sie unter Über das Web zugängliche Ressourcen und Zuordnungsmuster.

Manifest V2
{
  ...
  "web_accessible_resources": [
    "images/*",
    "style/extension.css",
    "script/extension.js"
  ],
  ...
}
Manifest V3
{
  ...
    "web_accessible_resources": [
    {
      "resources": [
        "images/*"
      ],
      "matches": [
        "*://*/*"
      ]
    },
    {
      "resources": [
        "style/extension.css",
        "script/extension.js"
      ],
      "matches": [
        "https://example.com/*"
      ]
    }
  ],
  ...
}