optional_permissions
| Typ | Array |
|---|---|
| Erforderlich | Nein |
| Manifest-Version | 2 oder höher |
| Beispiel |
json |
Verwenden Sie den Schlüssel optional_permissions, um Berechtigungen aufzulisten, die Sie zur Laufzeit anfordern möchten, nachdem Ihre Erweiterung 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 zur Installationszeit nicht benötigt, aber nach der Installation anfordern kann. Um eine Berechtigung anzufordern, verwenden Sie die API permissions.request(). Das Anfordern einer Berechtigung zeigt dem Benutzer ein Dialogfeld an, in dem er aufgefordert wird, der Erweiterung die Berechtigung zu erteilen, es sei denn, alle angeforderten Berechtigungen werden stillschweigend gewährt.
Für Ratschläge zur Gestaltung Ihrer Anfrage nach Berechtigungen zur Laufzeit, um die Wahrscheinlichkeit zu maximieren, dass Benutzer sie gewähren, siehe Fordern Sie Berechtigungen zur Laufzeit an.
Hinweis:
Benutzer können optionale Berechtigungen über den Firefox Add-ons-Manager verwalten. Erweiterungen, die optionale Berechtigungen verwenden, können die vom Benutzer gewährten Berechtigungen mit permissions.getAll() überprüfen und auf permissions.onAdded und permissions.onRemoved hören, um zu wissen, wann ein Benutzer Berechtigungen gewährt oder widerruft.
Der Schlüssel kann Host-Berechtigungen und API-Berechtigungen enthalten.
Host-Berechtigungen
Diese sind identisch mit den Host-Berechtigungen, die Sie im Schlüssel permissions angeben können.
Hinweis:
Bei der Verwendung von Manifest V3 oder höher sollten optionale Host-Berechtigungen mit dem Schlüssel optional_host_permissions im Manifest angegeben werden. Firefox hat optional_host_permissions in Version 128 eingeführt, siehe Fehler 1766026, und erlaubt weiterhin die Verwendung von optional_permissions, um optionale Hosts anzugeben. Die Verwendung von optional_host_permissions wird jedoch empfohlen.
API-Berechtigungen
Die optionalen API-Berechtigungen sind:
activeTabbackgroundbookmarksbrowserSettingsbrowsingDataclipboardReadclipboardWritecontentSettingscontextMenuscookiesdebuggerdeclarativeNetRequestdeclarativeNetRequestFeedbackdeclarativeNetRequestWithHostAccessdevtoolsdownloadsdownloads.openfindgeolocationhistoryidlemanagementnativeMessagingnotificationspageCapturepkcs11privacyproxypublicSuffixscriptingsearchsessionstabHidetabGroupstabstopSitesuserScripts(optional-only)webNavigationwebRequestwebRequestBlockingwebRequestFilterResponsewebRequestFilterResponse.serviceWorkerScript
Überprüfen Sie die Kompatibilitätstabelle für detailspezifische Unterstützung der Browser.
Diese optionalen Berechtigungen werden stillschweigend gewährt, ohne eine Benutzeraufforderung:
activeTabcookiesidlepublicSuffixtabGroupswebRequestwebRequestBlockingwebRequestFilterResponsewebRequestFilterResponse.serviceWorkerScript
Nur-optionale Berechtigungen
Optionale Berechtigungen sind im Allgemeinen zur Verwendung im Schlüssel permissions verfügbar, so dass sie zur Installationszeit angefordert werden können. Einige Browser unterstützen jedoch das Konzept der nur-optionalen Berechtigungen, Berechtigungen, die nur zur Laufzeit angefordert werden können. Zum Beispiel können in Firefox nur-optionale Berechtigungen vom Benutzer von der Optionsseite der Erweiterung aus oder mithilfe von permissions.request() gewährt werden. Nur-optionale Berechtigungen müssen einzeln und allein über die API permissions.request() angefordert werden.
Die nur-optionalen API-Berechtigungen sind:
userScripts(siehe userScripts permission)
Beispiele
"optional_permissions": ["*://developer.mozilla.org/*"]
Nur in Manifest V2, ermöglichen Sie der Erweiterung, privilegierten Zugriff auf Seiten unter developer.mozilla.org anzufordern.
"optional_permissions": ["tabs"]
Erlauben Sie der Erweiterung, um Zugriff auf die privilegierten Teile der tabs API zu bitten.
"optional_permissions": ["*://developer.mozilla.org/*", "tabs"]
Nur in Manifest V2, ermöglichen Sie der Erweiterung, um beide der oben genannten Berechtigungen anzufordern.