Consider to expose GPC preference to extensions within privacy.network
Categories
(WebExtensions :: General, task, P1)
Tracking
(firefox95 fixed, firefox96 fixed)
People
(Reporter: ckerschb, Assigned: jewilde)
References
Details
Attachments
(1 file)
|
48 bytes,
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta+
|
Details | Review |
We added support for Global Privacy Control (GPC) within Bug 1670058. It probably makes sense to allow extensions to observe if the preference is set within privacy.network (probably a read only exposure is fine here).
| Reporter | ||
Updated•4 years ago
|
| Assignee | ||
Comment 1•4 years ago
|
||
| Assignee | ||
Comment 2•4 years ago
|
||
Comment on attachment 9247218 [details]
Bug 1735372 - Expose GPC pref to extensions; r=mixedpuppy
Beta/Release Uplift Approval Request
- User impact if declined: Extensions would be unable to properly set GPC navigator property and HTTP header due to being unable to detect if the browser is already setting them. This would cause GPC signals to become invalid or mismatched when sent to a server.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: No
- Needs manual test from QE?: No
- If yes, steps to reproduce: N/A
- List of other uplifts needed: N/A
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): This change is low risk as it is only creating a readonly boolean value visible to extensions.
- String changes made/needed: N/A
Comment 4•4 years ago
|
||
| bugherder | ||
Comment 5•4 years ago
|
||
Comment on attachment 9247218 [details]
Bug 1735372 - Expose GPC pref to extensions; r=mixedpuppy
Low risk early in the beta cycle, approved for 95 beta 4, thanks.
Comment 6•4 years ago
|
||
How should extension developers understand the implications of these settings? Here is one interpretation:
-
If
privacy.globalprivacycontrol.functionality.enabledis set to TRUE andprivacy.globalprivacycontrol.enabledis also set to TRUE, then an extension should avoid double-sending the GPC header since Firefox will already do so. -
If
privacy.globalprivacycontrol.functionality.enabledis set to TRUE butprivacy.globalprivacycontrol.enabledis set to FALSE, then an extension should avoid sending a conflicting GPC header (Firefox will sent GPC FALSE and the extension shouldn't send GPC TRUE). -
If
privacy.globalprivacycontrol.functionality.enabledis set to FALSE, then an extension should avoid sending the GPC header. -
If neither parameter is set, then an extension should feel free to send GPC TRUE.
Is this accurate?
| Reporter | ||
Comment 7•4 years ago
|
||
(In reply to Peter Saint-Andre [:stpeter] from comment #6)
Is this accurate?
This seems like an accurate interpretation - June are we missing anything?
Comment 8•4 years ago
|
||
| bugherder uplift | ||
This was landed for 95.0b4.
https://hg.mozilla.org/releases/mozilla-beta/rev/50244767a433
| Assignee | ||
Comment 9•4 years ago
|
||
I would say that any situation where the browser isn't setting the GPC signals (navigator property + http header) to true (whenever privacy.globalprivacycontrol.enabled is FALSE) then the extension should feel free to set/overwrite the GPC signals. The privacy.globalprivacycontrol.enabled pref will be reflected in the network.globalPrivacyControl read only property. I'm assuming that a user either installing/telling an extension to set the GPC signals is the user intending to opt-out of having their information sold/shared so in that case if the browser is not going to be sending the signals then the extension should.
-
If
privacy.globalprivacycontrol.enabledis FALSE then the extension should feel free to overwrite what the browser has set in the navigator property and append the http header. -
If
privacy.globalprivacycontrol.enabledis TRUE then the extension shouldn't set the GPC signals as the browser is already setting them. -
Extensions should still be able to set the GPC signals regardless of what
privacy.globalprivacycontrol.functionality.enabledis set to as they had been doing previously, so they won't have to worry about what that preference is set to.
| Assignee | ||
Comment 10•4 years ago
|
||
One thing I forgot to mention was that for the case that privacy.globalprivacycontrol.enabled isn't set and therefore network.globalPrivacyControl isn't set (which would be in any version of Firefox older than 95) then the extensions should feel free to set the GPC signals there as well.
Comment 11•4 years ago
|
||
I'd agree with June here. Let's take Firefox tracking protection as an example. A user may choose to disable it for a website, but it does not mean that content blocking extensions should automatically stop doing their job on that website. The example is a bit of a stretch, but I hope it helps understand the logic.
Description
•