incognito support for proxy api
Categories
(WebExtensions :: Request Handling, enhancement, P1)
Tracking
(firefox67 verified)
Tracking | Status | |
---|---|---|
firefox67 | --- | verified |
People
(Reporter: mixedpuppy, Assigned: mixedpuppy)
References
(Blocks 2 open bugs, Regression)
Details
(Keywords: dev-doc-complete, regression)
Attachments
(2 files)
Proxy is a touch different in some ways.
- onRequest can work fine in non-private contexts.
- proxy.settings can affect private contexts, and since it can push data through a proxy, we should require private permissions.
- proxy.register should die, but it hasn't. It should definitely require private permission.
We'll have to followup with a mechanism to remove settings on upgrade to a version of firefox that prefs on this feature, that is in bug 1525428.
We may need a followup bug if we decide we want to keep proxy extensions enabled in private browsing through the upgrade. ni?mconca for this.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 1•5 years ago
|
||
Assignee | ||
Comment 2•5 years ago
|
||
@mconca, regarding proxy.register. After looking at the implementation, we do not get data in the proxy filter to know if the request is private or not. We'd have to do lower level changes to the proxy service to maybe get that data. As such, I'm leaving this disabled, requiring permission to use.
Comment 3•5 years ago
|
||
Current plan is to leaving extensions enabled in pbm windows through an upgrade. This keeps proxy extensions working.
We should document the behavior of proxy in pbm and non-pbm windows so, for new installs, developers know what to expect and communicate with their users. Also, we should file a networking bug to separate the behaviors so that this issue eventually goes away.
Assignee | ||
Comment 4•5 years ago
|
||
doc: proxy.settings.set will require private window access. Other proxy APIs will otherwise work.
Assignee | ||
Comment 5•5 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=9df68f26cf99f409d3e24db435abb8ea9db60f25
Assignee | ||
Comment 6•5 years ago
|
||
https://treeherder.mozilla.org/#/jobs?repo=try&revision=22531b493d5c34dc4edac2174b1c360508008a76
Pushed by scaraveo@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/60cb2cb96e5e support incognito setting in proxy api r=zombie
Comment 8•5 years ago
|
||
Backed out changeset 60cb2cb96e5e (bug 1525447) for failing android xpcshell on test_proxy_incognito.js CLOSED TREE
Backout revision https://hg.mozilla.org/integration/autoland/rev/b2eade4222d67953d708c5b47111cf1f6bcec2e5
Failure log https://treeherder.mozilla.org/logviewer.html#?job_id=228700905&repo=autoland
:mixedpuppy could you please take a look?
Assignee | ||
Comment 9•5 years ago
|
||
(In reply to Arthur Iakab [arthur_iakab] from comment #8)
:mixedpuppy could you please take a look?
Test just needs to be disabled on android.
Comment 10•5 years ago
|
||
Pushed by scaraveo@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/96a79763127d support incognito setting in proxy api r=zombie
Comment 11•5 years ago
|
||
bugherder |
Comment 12•5 years ago
|
||
Verfied as fixed using Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:67.0) Gecko/20100101 Firefox/67.0 , buildid 20190220040540.
I will attach a post fix video.
Updated•5 years ago
|
Comment 13•5 years ago
|
||
Updated•4 years ago
|
Comment 14•4 years ago
|
||
Added a note on the proxy.settings page:
Note: The ability to change proxy settings when running in a private window or tab requires private window access.
I also added this to the release notes:
Using the proxy.settings.set() method to change {{WebExtAPIRef("types.BrowserSetting", "BrowserSetting")}} values will not work in private browsing mode when the extension doesn't have private window access ({{bug(1525447)}}).
Updated•4 years ago
|
Assignee | ||
Comment 15•4 years ago
|
||
This should be something like:
"The ability to change proxy settings requires private window access even if only used in non-private windows. This is because proxy settings will affect both private and non-private windows. If the user has not granted private window permission to the extension, using proxy.settings.set will throw an exception."
Comment 16•4 years ago
|
||
This is what I ended up with:
The ability to change proxy settings requires private window access because proxy settings affect both private and non-private windows. Therefore, if an extension has not been granted private window permission, calls to proxy.settings.set() will throw an exception.
Updated•2 years ago
|
Description
•