chrome.privacy

refresh date: 2026-09-25 robots: noindex

Beschreibung

Mit der chrome.privacy API können Sie die Nutzung der Funktionen in Chrome steuern, die sich auf die Privatsphäre eines Nutzers auswirken können. Diese API basiert auf dem ChromeSetting-Prototyp des Typs API, um die Konfiguration von Chrome abzurufen und festzulegen.

Berechtigungen

privacy

Manifest

Sie müssen die Berechtigung „privacy“ im Manifest Ihrer Erweiterung deklarieren, um die API verwenden zu können. Beispiel:

{
  "name": "My extension",
  ...
  "permissions": [
    "privacy"
  ],
  ...
}

Nutzung

Das Lesen des aktuellen Werts einer Chrome-Einstellung ist ganz einfach. Zuerst müssen Sie die gewünschte Einstellung finden und dann get() für dieses Objekt aufrufen, um den aktuellen Wert und die Kontrollebene Ihrer Erweiterung abzurufen. Wenn Sie beispielsweise feststellen möchten, ob die Autofill-Funktion von Chrome aktiviert ist, schreiben Sie:

chrome.privacy.services.autofillEnabled.get({}, function(details) {
  if (details.value) {
    console.log('Autofill is on!');
  } else {
    console.log('Autofill is off!');
  }
});

Das Ändern des Werts einer Einstellung ist etwas komplexer, da Sie zuerst prüfen müssen, ob Ihre Erweiterung die Einstellung steuern kann. Der Nutzer sieht keine Änderung an seinen Einstellungen, wenn Ihre Erweiterung eine Einstellung umschaltet, die entweder durch Unternehmensrichtlinien auf einen bestimmten Wert festgelegt ist (levelOfControl wird auf „not_controllable“ gesetzt) oder wenn eine andere Erweiterung den Wert steuert (levelOfControl wird auf „controlled_by_other_extensions“ gesetzt). Der Aufruf set() ist erfolgreich, die Einstellung wird jedoch sofort überschrieben. Da dies verwirrend sein kann, ist es ratsam, den Nutzer zu warnen, wenn die von ihm gewählten Einstellungen nicht angewendet werden.

Das bedeutet, dass du die Methode get() verwenden solltest, um deine Zugriffsebene zu bestimmen, und dann nur set() aufrufen solltest, wenn deine Erweiterung die Kontrolle über die Einstellung übernehmen kann. Wenn deine Erweiterung die Einstellung nicht steuern kann, ist es wahrscheinlich eine gute Idee, die Funktion visuell zu deaktivieren, um Verwirrung bei Nutzern zu vermeiden:

chrome.privacy.services.autofillEnabled.get({}, function(details) {
  if (details.levelOfControl === 'controllable_by_this_extension') {
    chrome.privacy.services.autofillEnabled.set({ value: true }, function() {
      if (chrome.runtime.lastError === undefined) {
        console.log("Hooray, it worked!");
      } else {
        console.log("Sadness!", chrome.runtime.lastError);
      }
    });
  }
});

Wenn Sie an Änderungen des Werts einer Einstellung interessiert sind, fügen Sie dem Ereignis onChange einen Listener hinzu. So können Sie den Nutzer unter anderem warnen, wenn eine neu installierte Erweiterung die Kontrolle über eine Einstellung übernimmt oder wenn eine Unternehmensrichtlinie Ihre Kontrolle überschreibt. Wenn Sie auf Änderungen am Status von Autofill warten möchten, reicht beispielsweise der folgende Code aus:

chrome.privacy.services.autofillEnabled.onChange.addListener(
  function (details) {
    // The new value is stored in `details.value`, the new level of control
    // in `details.levelOfControl`, and `details.incognitoSpecific` will be
    // `true` if the value is specific to Incognito mode.
  }
);

Beispiele

Wenn Sie diese API ausprobieren möchten, installieren Sie das Beispiel für die Privacy API aus dem Repository chrome-extension-samples.

Typen

AutofillBlockedType

Chrome 151 oder höher

Kategorien von Autofill-Daten.

Enum

"contact_info"

"payments"

"identity_docs"

"travel"

"all"

IPHandlingPolicy

Chrome 48 oder höher

Die Richtlinie für die IP-Verarbeitung von WebRTC.

Enum

"default"

"default_public_and_private_interfaces"

"default_public_interface_only"

"disable_non_proxied_udp"

Attribute

network

Einstellungen, die sich auf die Verarbeitung von Netzwerkverbindungen in Chrome im Allgemeinen auswirken.

Typ

Objekt

Attribute

  • networkPredictionEnabled

    Wenn diese Richtlinie aktiviert ist, versucht Chrome, das Surfen im Web zu beschleunigen, indem DNS-Einträge vorab aufgelöst, TCP- und SSL-Verbindungen zu Servern präventiv geöffnet und Seiten vorab geladen werden. Wenn Sie diese Einstellung deaktivieren, können Websiteinhaber keine Inhalte mehr spekulativ laden (z. B. Prefetching oder Prerendering über die Speculation Rules API). Es hat keine Auswirkungen auf von Webseiten initiierte Vorverbindungen oder DNS-Prefetches. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • webRTCIPHandlingPolicy
    Chrome 48 oder höher

    Nutzer können die Kompromisse zwischen Medienleistung und Datenschutz festlegen, was sich darauf auswirkt, wie WebRTC-Traffic weitergeleitet wird und wie viele lokale Adressinformationen offengelegt werden. Der Wert dieser Einstellung ist vom Typ „IPHandlingPolicy“ und standardmäßig auf default festgelegt.

services

Einstellungen, mit denen Funktionen aktiviert oder deaktiviert werden, für die Netzwerkdienste von Drittanbietern erforderlich sind, die von Google und Ihrem Standardsuchanbieter bereitgestellt werden.

Typ

Objekt

Attribute

  • alternateErrorPagesEnabled

    Wenn diese Option aktiviert ist, verwendet Chrome einen Webdienst, um Navigationsfehler zu beheben. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • autofillAddressEnabled
    Chrome 70 oder höher

    Wenn diese Richtlinie aktiviert ist, bietet Chrome an, Adressen und andere Formulardaten automatisch auszufüllen. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • autofillCreditCardEnabled
    Chrome 70 oder höher

    Wenn diese Richtlinie aktiviert ist, bietet Chrome an, Kreditkartenformulare automatisch auszufüllen. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • autofillEnabled
    Seit Chrome 70 eingestellt

    Verwenden Sie stattdessen „privacy.services.autofillAddressEnabled“ und „privacy.services.autofillCreditCardEnabled“. Diese Option ist in dieser Version aus Gründen der Abwärtskompatibilität noch vorhanden und wird in Zukunft entfernt.

    Wenn diese Richtlinie aktiviert ist, bietet Chrome an, Formulare automatisch auszufüllen. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • passwordSavingEnabled

    Wenn die Richtlinie aktiviert ist, werden Sie vom Passwortmanager gefragt, ob Sie Passwörter speichern möchten. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • safeBrowsingEnabled

    Wenn diese Option aktiviert ist, versucht Chrome, Sie bestmöglich vor Phishing und Malware zu schützen. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • safeBrowsingExtendedReportingEnabled

    Wenn diese Richtlinie aktiviert ist, sendet Chrome zusätzliche Informationen an Google, wenn Safe Browsing eine Seite blockiert, z. B. den Inhalt der blockierten Seite. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf false festgelegt ist.

  • searchSuggestEnabled

    Wenn diese Option aktiviert ist, sendet Chrome den Text, den Sie in die Omnibox eingeben, an Ihre Standardsuchmaschine. Diese liefert dann Vervollständigungen für Websites und Suchanfragen, die wahrscheinlich zu dem passen, was Sie bisher eingegeben haben. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • spellingServiceEnabled

    Wenn diese Option aktiviert ist, verwendet Chrome einen Webdienst, um Rechtschreibfehler zu korrigieren. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf false festgelegt ist.

  • translationServiceEnabled

    Wenn diese Option aktiviert ist, bietet Chrome an, Seiten zu übersetzen, die nicht in einer Sprache verfasst sind, die Sie lesen können. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

websites

Einstellungen, die festlegen, welche Informationen Chrome für Websites verfügbar macht.

Typ

Objekt

Attribute

  • adMeasurementEnabled
    Chrome 111+

    Wenn sie deaktiviert ist, sind die Attribution Reporting API und die Private Aggregation API deaktiviert. Der Wert dieser Einstellung ist vom Typ „boolesch“ und der Standardwert ist true. Erweiterungen können diese APIs nur deaktivieren, indem sie den Wert auf false setzen. Wenn Sie versuchen, diese APIs auf true festzulegen, wird ein Fehler ausgegeben.

  • doNotTrackEnabled
    Chrome 65 oder höher

    Wenn diese Richtlinie aktiviert ist, sendet Chrome den „Do Not Track“-Header (DNT: 1) mit Ihren Anfragen. Der Wert dieser Einstellung ist vom Typ „boolesch“ und der Standardwert ist false.

  • fledgeEnabled
    Chrome 111+

    Wenn diese Option deaktiviert ist, ist die Fledge API deaktiviert. Der Wert dieser Einstellung ist vom Typ „boolesch“ und der Standardwert ist true. Erweiterungen können diese API nur deaktivieren, indem sie den Wert auf false setzen. Wenn Sie versuchen, diese API auf true festzulegen, wird ein Fehler ausgegeben.

  • hyperlinkAuditingEnabled

    Wenn diese Option aktiviert ist, sendet Chrome auf Anfrage einer Website (<a ping>) Audit-Pings. Der Wert dieser Einstellung ist vom Typ „Boolesch“ und der Standardwert ist true.

  • protectedContentEnabled

    Nur unter Windows und ChromeOS verfügbar: Wenn diese Option aktiviert ist, stellt Chrome Plug-ins eine eindeutige ID zur Verfügung, damit geschützte Inhalte ausgeführt werden können. Der Wert dieser Einstellung ist vom Typ „boolesch“ und der Standardwert ist true.

  • referrersEnabled

    Wenn diese Option aktiviert ist, sendet Chrome referer-Header mit Ihren Anfragen. Ja, der Name dieser Einstellung stimmt nicht mit dem falsch geschriebenen Header überein. Nein, wir werden es nicht ändern. Der Wert dieser Einstellung ist vom Typ „boolesch“ und der Standardwert ist true.

  • thirdPartyCookiesAllowed

    Wenn die Richtlinie deaktiviert ist, blockiert Chrome das Setzen von Cookies durch Drittanbieter-Websites. Der Wert dieser Einstellung ist vom Typ „boolesch“ und der Standardwert ist true. Erweiterungen können diese API im Inkognitomodus nicht aktivieren, da Drittanbieter-Cookies dort blockiert werden und nur auf Websiteebene zugelassen werden können. Wenn Sie versuchen, diese API im Inkognitomodus auf „true“ zu setzen, wird ein Fehler ausgegeben.

    Hinweis: Einzelne Websites können möglicherweise weiterhin auf Drittanbieter-Cookies zugreifen, wenn diese API false zurückgibt, sofern sie eine gültige Ausnahme haben oder stattdessen die Storage Access API verwenden.

  • topicsEnabled
    Chrome 111+

    Wenn die Richtlinie deaktiviert ist, ist die Topics API deaktiviert. Der Wert dieser Einstellung ist vom Typ „boolesch“ und der Standardwert ist true. Erweiterungen können diese API nur deaktivieren, indem sie den Wert auf false setzen. Wenn Sie versuchen, diese API auf true festzulegen, wird ein Fehler ausgegeben.