chrome.privacy

Beschreibung

Mit der chrome.privacy API können Sie die Nutzung der Funktionen in Chrome steuern, die sich auf den Datenschutz eines Nutzers auswirken können. Diese API verwendet den ChromeSetting-Prototyp vom Typ API, um die Chrome-Konfiguration abzurufen und festzulegen.

Berechtigungen

privacy

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

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

Konzepte und Verwendung

Der aktuelle Wert einer Chrome-Einstellung lässt sich ganz einfach ermitteln. Sie müssen zuerst die gewünschte Property finden und dann get() auf dieses Objekt anwenden, um den aktuellen Wert und die Kontrollebene der Erweiterung abzurufen. Wenn Sie beispielsweise wissen möchten, ob die Funktion zum automatischen Ausfüllen von Kreditkarten in Chrome aktiviert ist, geben Sie Folgendes ein:

chrome.privacy.services.autofillCreditCardEnabled.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 der Wert von einer anderen Erweiterung gesteuert wird (levelOfControl wird auf „controlled_by_other_extensions“ gesetzt). Der set()-Aufruf ist erfolgreich, die Einstellung wird jedoch sofort überschrieben. Da dies verwirrend sein kann, sollten Sie Nutzer warnen, wenn die von ihnen ausgewählten Einstellungen nicht praktisch angewendet werden.

Sie sollten also die Methode get() verwenden, um die Zugriffsebene zu ermitteln, und dann nur set() aufrufen, wenn Ihre Erweiterung die Einstellung übernehmen kann. Wenn Ihre Erweiterung die Einstellung nicht übernehmen kann, sollten Sie die Funktion visuell deaktivieren, um die Verwirrung der Nutzer zu vermeiden:

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

Wenn Sie Änderungen am Wert einer Einstellung verfolgen möchten, fügen Sie dem Ereignis onChange einen Listener hinzu. So können Sie Nutzer beispielsweise warnen, wenn eine neuere Erweiterung die Kontrolle über eine Einstellung übernimmt oder Ihre Einstellungen durch eine Unternehmensrichtlinie überschrieben werden. Wenn Sie beispielsweise auf Änderungen am Status des automatischen Ausfüllens von Kreditkartendaten achten möchten, reicht der folgende Code aus:

chrome.privacy.services.autofillCreditCardEnabled.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

IPHandlingPolicy

Chrome 48 und höher

Richtlinie für das IP-Handling von WebRTC

Enum

„default“

"default_public_and_private_interfaces"

"default_public_interface_only"

"disable_non_proxied_udp"

Attribute

network

Einstellungen, die die Verarbeitung von Netzwerkverbindungen in Chrome im Allgemeinen beeinflussen.

Typ

Objekt

Attribute

  • networkPredictionEnabled

    Wenn diese Option aktiviert ist, versucht Chrome, das Surfen im Web zu beschleunigen, indem DNS-Einträge vorab aufgelöst und TCP- und SSL-Verbindungen zu Servern vorzeitig geöffnet werden. Diese Einstellung wirkt sich nur auf Aktionen aus, die vom internen Prognosedienst von Chrome ausgeführt werden. Dies hat keine Auswirkungen auf von Webseiten initiierte Vorab-Ladevorgänge oder Vorab-Verbindungen. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • webRTCIPHandlingPolicy
    Chrome 48 und höher

    Nutzern die Möglichkeit geben, die Kompromisse zwischen Medienleistung und Datenschutz anzugeben, die sich darauf auswirken, wie WebRTC-Traffic weitergeleitet wird und wie viele Informationen zu lokalen Adressen offengelegt werden. Der Wert dieser Einstellung hat den Typ „IPHandlingPolicy“ und ist standardmäßig auf default festgelegt.

services

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

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 und höher

    Wenn diese Funktion 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 und höher

    Wenn diese Funktion 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 bitte „privacy.services.autofillAddressEnabled“ und „privacy.services.autofillCreditCardEnabled“. Diese Option ist in dieser Version aus Gründen der Abwärtskompatibilität verfügbar und wird in Zukunft entfernt.

    Wenn diese Funktion 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 diese Option 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 Funktion aktiviert ist, schützt Chrome Sie bestmöglich vor Phishing und Malware. Der Wert dieser Einstellung ist ein boolescher Wert, der standardmäßig auf true festgelegt ist.

  • safeBrowsingExtendedReportingEnabled

    Wenn diese Option 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 stellt dann Vervollständigungen für Websites und Suchanfragen bereit, die wahrscheinlich die bisher eingegebenen Zeichen enthalten. 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, wird von Chrome angeboten, fremdsprachige Seiten zu übersetzen. 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 und höher

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

  • doNotTrackEnabled
    Chrome 65 und höher

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

  • fledgeEnabled
    Chrome 111 und höher

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

  • hyperlinkAuditingEnabled

    Wenn diese Einstellung aktiviert ist, sendet Chrome Prüf-Pings, wenn eine Website dies anfordert (<a ping>). Der Wert dieser Einstellung ist vom Typ „boolescher Wert“ 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 „boolescher Wert“ 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 der falsch geschriebenen Überschrift überein. Nein, wir werden das nicht ändern. Der Wert dieser Einstellung ist vom Typ „boolescher Wert“ und der Standardwert ist true.

  • relatedWebsiteSetsEnabled
    Chrome 121 und höher

    Wenn diese Option deaktiviert ist, werden auch Gruppen ähnlicher Websites deaktiviert. Der Wert dieser Einstellung ist vom Typ „boolescher Wert“ und der Standardwert ist true. Erweiterungen können diese API nur deaktivieren, indem sie den Wert auf false festlegen. Wenn Sie versuchen, diese API auf true festzulegen, wird ein Fehler ausgegeben.

  • thirdPartyCookiesAllowed

    Wenn diese Einstellung deaktiviert ist, verhindert Chrome, dass Drittanbieter-Websites Cookies setzen. Der Wert dieser Einstellung ist vom Typ „boolescher Wert“ und der Standardwert ist true.

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

  • topicsEnabled
    Chrome 111 und höher

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