Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

optional_permissions

Typ Array
Erforderlich Nein
Manifest-Version 2 oder höher
Beispiel
json
"optional_permissions": [
  "webRequest"
]

Verwenden Sie den Schlüssel optional_permissions, um Berechtigungen aufzulisten, die Ihre Erweiterung zur Laufzeit anfordern soll, nachdem sie installiert wurde.

Der Schlüssel permissions listet Berechtigungen auf, die Ihre Erweiterung benötigt, bevor sie installiert werden kann. Im Gegensatz dazu listet optional_permissions Berechtigungen auf, die Ihre Erweiterung bei der Installation nicht benötigt, aber danach anfordern kann. Verwenden Sie zum Anfordern einer Berechtigung die API permissions.request(). Beim Anfordern einer Berechtigung wird dem Benutzer ein Dialogfeld angezeigt, in dem er aufgefordert wird, Ihrer Erweiterung die Berechtigung zu erteilen, sofern nicht alle angeforderten Berechtigungen ohne Nachfrage erteilt werden.

Hinweise dazu, wie Sie Berechtigungsanfragen zur Laufzeit so gestalten, dass Benutzer ihnen mit höherer Wahrscheinlichkeit zustimmen, finden Sie unter Berechtigungen zur Laufzeit anfordern.

Hinweis: Benutzer können optionale Berechtigungen im Firefox-Add-ons-Manager verwalten. Erweiterungen, die optionale Berechtigungen verwenden, können mit permissions.getAll() prüfen, welche Berechtigungen der Benutzer erteilt hat, und über permissions.onAdded und permissions.onRemoved erkennen, wann ein Benutzer Berechtigungen erteilt oder widerruft.

Der Schlüssel kann Host-Berechtigungen und API-Berechtigungen enthalten.

Host-Berechtigungen

Dies sind dieselben Host-Berechtigungen, die Sie im Schlüssel permissions angeben können.

Hinweis: Bei Verwendung von Manifest V3 oder höher sollten optionale Host-Berechtigungen mit dem Manifest-Schlüssel optional_host_permissions angegeben werden. Firefox hat optional_host_permissions mit Version 128 eingeführt (siehe Bug 1766026) und erlaubt weiterhin die Verwendung von optional_permissions zur Angabe optionaler Hosts. Die Verwendung von optional_host_permissions wird jedoch empfohlen.

API-Berechtigungen

Die optionalen API-Berechtigungen sind:

  • activeTab
  • background
  • bookmarks
  • browserSettings
  • browsingData
  • clipboardRead
  • clipboardWrite
  • contentSettings
  • contextMenus
  • cookies
  • debugger
  • declarativeNetRequest
  • declarativeNetRequestFeedback
  • declarativeNetRequestWithHostAccess
  • devtools
  • downloads
  • downloads.open
  • find
  • geolocation
  • history
  • idle
  • management
  • nativeMessaging
  • notifications
  • pageCapture
  • pkcs11
  • privacy
  • proxy
  • publicSuffix
  • scripting
  • search
  • sessions
  • tabHide
  • tabGroups
  • tabs
  • topSites
  • userScripts (nur optional)
  • webNavigation
  • webRequest
  • webRequestBlocking
  • webRequestFilterResponse
  • webRequestFilterResponse.serviceWorkerScript

Einzelheiten zur Unterstützung in den jeweiligen Browsern finden Sie in der Kompatibilitätstabelle.

Die folgenden optionalen Berechtigungen werden ohne Nachfrage beim Benutzer erteilt:

  • activeTab
  • cookies
  • idle
  • publicSuffix
  • tabGroups
  • webRequest
  • webRequestBlocking
  • webRequestFilterResponse
  • webRequestFilterResponse.serviceWorkerScript

Berechtigungen, die nur optional angefordert werden können

Optionale Berechtigungen können im Allgemeinen im Schlüssel permissions verwendet und somit bei der Installation angefordert werden. Einige Browser unterstützen jedoch Berechtigungen, die nur optional angefordert werden können, also ausschließlich zur Laufzeit. In Firefox kann der Benutzer solche Berechtigungen beispielsweise über die Optionsseite der Erweiterung oder mithilfe von permissions.request() erteilen. Berechtigungen, die nur optional angefordert werden können, müssen über die API permissions.request() einzeln und ohne weitere Berechtigungen angefordert werden.

Die API-Berechtigungen, die nur optional angefordert werden können, sind:

Beispiele

json
 "optional_permissions": ["*://developer.mozilla.org/*"]

Ermöglicht der Erweiterung, privilegierten Zugriff auf Seiten unter developer.mozilla.org anzufordern. Dies gilt nur für Manifest V2.

json
  "optional_permissions": ["tabs"]

Ermöglicht der Erweiterung, Zugriff auf die privilegierten Teile der tabs-API anzufordern.

json
  "optional_permissions": ["*://developer.mozilla.org/*", "tabs"]

Ermöglicht der Erweiterung, beide oben genannten Berechtigungen anzufordern. Dies gilt nur für Manifest V2.

Browser-Kompatibilität