privacy.websites
The privacy.websites
property contains privacy-related settings controlling the way to browser interacts with websites. Each property is a types.BrowserSetting
object.
Default values for these properties tend to vary across browsers.
Properties
-
A
types.BrowserSetting
object whose underlying value is an object.The object has two properties:
behavior
: a string which may take any of the following values:- "allow_all": accept all cookies
- "reject_all": reject all cookies
- "reject_third_party": reject all third-party cookies
- "allow_visited": accept a third-party cookie only if the cookie's top-level domain already has at least one cookie.
- "reject_trackers": reject tracking cookies
- "reject_trackers_and_partition_foreign": reject trackers and partition third-party cookies.
nonPersistentCookies
Deprecated : a boolean. If true, all cookies will be treated as session cookies.
firstPartyIsolate
-
A
types.BrowserSetting
object whose underlying value is a boolean.If
true
, thefirstPartyIsolate
preference makes the browser associate all data (including cookies, HSTS data, cached images, and more) for any third party domains with the domain in the address bar. This prevents third party trackers from using directly stored information to identify the user across different websites, but may break websites where the user logs in with a third party account (such as a Facebook or Google account).Defaults to
false
. hyperlinkAuditingEnabled
-
A
types.BrowserSetting
object whose underlying value is a boolean. Iftrue
, the browser sends auditing pings when a website uses theping
attribute to request them. protectedContentEnabled
-
A
types.BrowserSetting
object whose underlying value is a boolean. Available on Windows only. Iftrue
, the browser provides a unique ID to plugins in order to run protected content. referrersEnabled
-
A
types.BrowserSetting
object whose underlying value is a boolean. If enabled, the browser sends referer headers with your requests. resistFingerprinting
-
A
types.BrowserSetting
object whose underlying value is a boolean.Browser fingerprinting is the practice by which websites use Web APIs to collect status or configuration data associated with the browser or the device it's running on. By doing this, they can build up a digital fingerprint that they can use to identify and track a particular user.
If
true
, theresistFingerprinting
preference makes the browser report generic spoofed information for data that's commonly used for fingerprinting. Such data includes the number of CPU cores, precision of JavaScript timers, and the local timezone. It will also disable features that are used in fingerprinting, such as GamePad support, and the WebSpeech and Navigator APIs.Defaults to
false
. -
A
types.BrowserSetting
object whose underlying value is a boolean. Iffalse
, the browser blocks third-party cookies. trackingProtectionMode
-
"Tracking protection" is a browser feature that blocks requests made to domains that are known to engage in cross-site tracking of users. Sites that track users are most commonly third-party advertising and analytics sites. This setting is a
types.BrowserSetting
object that determines whether the browser should enable tracking protection. Its underlying value is a string that may take one of three values:"always"
: tracking protection is on."never"
: tracking protection is off."private_browsing"
: tracking protection is on in private browsing windows only.
Browser compatibility
BCD tables only load in the browser
Examples
Set the hyperlinkAuditingEnabled
property.
function onSet(result) {
if (result) {
console.log("success");
} else {
console.log("failure");
}
}
browser.browserAction.onClicked.addListener(() => {
let getting = browser.privacy.websites.hyperlinkAuditingEnabled.get({});
getting.then((got) => {
console.log(got.value);
if (
got.levelOfControl === "controlled_by_this_extension" ||
got.levelOfControl === "controllable_by_this_extension"
) {
let setting = browser.privacy.websites.hyperlinkAuditingEnabled.set({
value: true,
});
setting.then(onSet);
} else {
console.log("Not able to set hyperlinkAuditingEnabled");
}
});
});
Note: This API is based on Chromium's chrome.privacy
API. This documentation is derived from privacy.json
in the Chromium code.