From 33a5708cc125bcaa4ebe74b46bb6fe1820616ff0 Mon Sep 17 00:00:00 2001 From: rebloor Date: Sat, 9 Nov 2024 06:40:41 +1300 Subject: [PATCH] Email tracker classification in webRequest events (#36401) * Email tracker classification in webRequest events * Additional info re categories --- .../webextensions/api/webrequest/onauthrequired/index.md | 3 +++ .../webextensions/api/webrequest/onbeforeredirect/index.md | 3 +++ .../webextensions/api/webrequest/onbeforerequest/index.md | 3 +++ .../webextensions/api/webrequest/onbeforesendheaders/index.md | 3 +++ .../add-ons/webextensions/api/webrequest/oncompleted/index.md | 3 +++ .../webextensions/api/webrequest/onerroroccurred/index.md | 3 +++ .../webextensions/api/webrequest/onheadersreceived/index.md | 3 +++ .../webextensions/api/webrequest/onresponsestarted/index.md | 3 +++ .../webextensions/api/webrequest/onsendheaders/index.md | 3 +++ files/en-us/mozilla/firefox/releases/104/index.md | 4 ++++ 10 files changed, 31 insertions(+) diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md index 2f52e0be96f0fab..d5513ac93d82da7 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onauthrequired/index.md @@ -198,10 +198,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request. The `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Examples This code observes authentication requests for the target URL: diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md index a63abaa079de9b4..303ba6e5aba4b11 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforeredirect/index.md @@ -139,10 +139,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Browser compatibility {{Compat}} diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md index 620b05c7fef4fe4..cf1ffd1df0b3f07 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforerequest/index.md @@ -165,10 +165,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Browser compatibility {{Compat}} diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md index 62110ce945716c7..031a5d5a34aa357 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onbeforesendheaders/index.md @@ -160,10 +160,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Browser compatibility {{Compat}} diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md index 47d74cb135d7326..3da16623e3eb433 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/oncompleted/index.md @@ -137,10 +137,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Browser compatibility {{Compat}} diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md index 40cc86176c9af54..2e4cfc3439d70bc 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onerroroccurred/index.md @@ -131,10 +131,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + **Note** If Firefox Tracking Protection blocks the request an empty object is returned and `error` returns one of these codes: - `NS_ERROR_MALWARE_URI` indicating a malware URI. diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md index 6dceb565efe5115..e025eaff3182ffd 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onheadersreceived/index.md @@ -157,10 +157,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Browser compatibility {{Compat}} diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md index ed917a1698545f4..e379d582e09ef7c 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onresponsestarted/index.md @@ -137,10 +137,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Browser compatibility {{Compat}} diff --git a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md index ac64359f29f1caa..cb686e8421bfeec 100644 --- a/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md +++ b/files/en-us/mozilla/add-ons/webextensions/api/webrequest/onsendheaders/index.md @@ -129,10 +129,13 @@ Events have three functions: - `fingerprinting_content` indicates the domain is in the fingerprinting category but not the tracking category. Examples of this type of domain include payment providers who use fingerprinting techniques to identify the visiting user for anti-fraud purposes. - `cryptomining` and `cryptomining_content`: similar to the fingerprinting category but for cryptomining resources. - `tracking`, `tracking_ad`, `tracking_analytics`, `tracking_social`, and `tracking_content`: indicates the request is involved in tracking. `tracking` is any generic tracking request, the `ad`, `analytics`, `social`, and `content` suffixes identify the type of tracker. + - `emailtracking` and `emailtracking_content`: indicates the request is involved in tracking emails. - `any_basic_tracking`: a meta flag that combines tracking and fingerprinting flags, excluding `tracking_content` and `fingerprinting_content`. - `any_strict_tracking`: a meta flag that combines all tracking and fingerprinting flags. - `any_social_tracking`: a meta flag that combines all social tracking flags. + You can find more information on tracker types on the [disconnect.me](https://disconnect.me/trackerprotection#categories_of_trackers) website. The `content` suffix indicates trackers that track and serve content. Blocking them protects users but can lead to sites breaking or elements not being displayed. + ## Browser compatibility {{Compat}} diff --git a/files/en-us/mozilla/firefox/releases/104/index.md b/files/en-us/mozilla/firefox/releases/104/index.md index e9883da70ff6a27..13a2632e0e066ec 100644 --- a/files/en-us/mozilla/firefox/releases/104/index.md +++ b/files/en-us/mozilla/firefox/releases/104/index.md @@ -65,6 +65,10 @@ No notable changes. - Improved stability and performance when minimizing or restoring windows on Linux ([Firefox bug 1780212](https://bugzil.la/1780212)). - Added support for `touch` actions ([Firefox bug 1543337](https://bugzil.la/1543337)). +## Changes for add-on developers + +- The `emailtracking` and `emailtracking_content` flags have been added to the tracking classifications available in `urlClassification` for the {{WebExtAPIRef("webRequest")}} events ([Firefox bug 1773695](https://bugzil.la/1773695)) + ## Older versions {{Firefox_for_developers}}