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

View in English Always switch to English

permissions

Ermöglicht Erweiterungen, zusätzliche Berechtigungen zur Laufzeit anzufordern, nachdem sie installiert wurden.

Erweiterungen benötigen Berechtigungen, um auf leistungsstärkere WebExtension-APIs zuzugreifen. Sie können beim Installieren Berechtigungen anfordern, indem sie diese in das permissions manifest.json-Schlüssel einfügen. Die Hauptvorteile, Berechtigungen beim Installieren anzufordern, sind:

  • Die Erweiterung fragt den Benutzer nur einmal, was weniger störend und eine einfachere Entscheidung für den Benutzer ist.
  • Die Erweiterung kann sich auf den Zugriff auf die benötigten APIs verlassen, da sie weiß, dass die Berechtigungen erteilt sind.

In den meisten großen Browsern können Benutzer durch den Erweiterungs-Manager des Browsers sehen, ob installierte Erweiterungen erweiterte Berechtigungen anfordern.

Mit der Permissions-API kann eine Erweiterung zur Laufzeit zusätzliche Berechtigungen anfordern. Die Erweiterung muss diese Berechtigungen in

Die Hauptvorteile, Berechtigungen zur Laufzeit anzufordern, sind:

  • Die Erweiterung kann mit einem kleineren Satz von Berechtigungen laufen, es sei denn, sie benötigt sie.
  • Die Erweiterung kann eine Ablehnung von Berechtigungen elegant handhaben, anstatt den Benutzer mit einer globalen „Alles oder Nichts“-Entscheidung beim Installieren zu konfrontieren. Zum Beispiel kann ein Benutzer viel von einer Karten-Erweiterung profitieren, ohne ihr Zugriff auf seinen Standort zu geben.
  • Die Erweiterung kann Host-Berechtigungen benötigen, weiß jedoch beim Installieren nicht, welche Host-Berechtigungen sie benötigt. Zum Beispiel könnte die Liste der Hosts eine Benutzereinstellung sein. In diesem Szenario kann das Anfordern eines spezifischeren Bereichs von Hosts zur Laufzeit eine Alternative zum Anfordern von "<all_urls>" beim Installieren sein.

Beachten Sie, dass einige Berechtigungen in optional_permissions nicht erlaubt sind.

Um die Permissions-API zu verwenden, entscheiden Sie, welche Berechtigungen Ihre Erweiterung zur Laufzeit anfordern kann, und listen Sie sie in optional_permissions und browser_specific_settings.gecko.data_collection_permissions.optional auf. Danach können Sie alle in optional_permissions oder browser_specific_settings.gecko.data_collection_permissions.optional enthaltenen Berechtigungen anfordern. Die Erweiterung kann diese Anforderungen nur im Handler für eine Benutzeraktion stellen (zum Beispiel ein Klick-Handler).

Ab Firefox 84 können Benutzer optionale Berechtigungen installierter Erweiterungen im Add-ons-Manager verwalten. Erweiterungen, die optionale Berechtigungen verwenden, sollten API-Ereignisse wie browser.permissions.onAdded und browser.permissions.onRemoved überwachen, um zu wissen, wann ein Benutzer diese Berechtigungen erteilt oder widerruft.

Für Ratschläge zur Gestaltung Ihrer Anfrage nach Laufzeitberechtigungen, um die Wahrscheinlichkeit zu maximieren, dass Benutzer diese erteilen, siehe Anfrage von Berechtigungen zur Laufzeit.

Typen

permissions.Permissions

Repräsentiert eine Menge von Berechtigungen.

Methoden

permissions.contains()

Überprüft, ob die Erweiterung bestimmte Berechtigungen hat.

permissions.getAll()

Ruft alle der Erweiterung derzeit gewährten Berechtigungen ab.

permissions.remove()

Gibt einen Satz von Berechtigungen auf.

permissions.request()

Fragt einen Satz von Berechtigungen an.

Ereignishandler

permissions.onAdded

Wird ausgelöst, wenn ein Benutzer neue Berechtigungen erteilt.

permissions.onRemoved

Wird ausgelöst, wenn ein Benutzer eine Berechtigung widerruft.

Beispielerweiterungen

Browser-Kompatibilität

Siehe auch

Hinweis: Diese API basiert auf der chrome.permissions API von Chromium.