-
Notifications
You must be signed in to change notification settings - Fork 42
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support request_denying cookies or immediately delete #33
Comments
Hi, first of all here are some reminders about what Firefox does, what the API allows and what this addon does (hoping to be clear). I will take this opportunity to leave this issue visible or to add the content to the documentation. For the moment here is what Firefox allows from its preferences:
What Firefox allows from its Webextensions API:
PS: A session cookie identifies a user on a site without storing any personal information on it. They allow to recognize you when you move from page to page within one site and that any information you have entered is remembered. Session cookies are supposed to be used to manage logins, shopping cart, game score, or anything else the server needs to remember. But like all cookies, they can also be used to analyze user behavior; it is impossible to predict the true role of a cookie. Nevertheless, we can assume that advertising tracking seeks to identify users Session cookies are supposed to be deleted when the browser is restarted since they don't have an expiration date. In practice, if you configured Firefox to restore the active tabs during its restart, then the session cookies are retained. They become permanent. First of all, the purpose of this addon is not to provide a firewall to manage cookies authorizations For blocking cookies and other navigation elements (scripts, ajax requests, media, iframe, etc.), I use uMatrix in addition to uBlockOrigin (ad blocking oriented). These 2 addons of the same author work on the principle of matrix firewall. PS: I do not participate in this project, so I have no reason to try to sell it, other than its effectiveness :p
Deny all, then allow according to the sites visited ? Yes uMatrix does this very well with a very fine tuning possibility that Cookie Monster did not have, at the time of Firefox pre-WebExtensions: -global context management: Thus, this addon allows you to see which third party cookies have which permissions and to change them.
Cookies protection according to CQM is a functionality which allows to recreate on the fly a cookie that has been deleted by a site or by the user of the addon. Example: PS: In the CQM options you can program this type of selective removal at Firefox startup.
In fact, what really matters is to prevent cookies from leaving the browser instead of preventing them from entering. This is explained on the GitHub of the uMatrix project and I agree with that (furthermore, uMatrix allows you to remove them from your browser): uMatrix: cookies.
In fact it is better/easier to allow all cookies in Firefox and delegate the responsibility for fine filtering to addons. So if you go in the parameters of uMatrix, just put the following rule, if it is not there:
That is to block cookies by default on all sites (first party cookies) to all sites (third party cookies). Example:
Obviously the interface of the addon allows you not to write these rules by hand
There is a feature, still hidden to users under Firefox 61: First-Party Isolation.
I think once this option is enabled in combination with aggressive filtering on uMatrix, you'll be pretty well protected. Note: The cookies we are talking about here are not the only data that the sites are storing on the computer. LocalStorage and IndexedDB technologies are also problematic because there is no API to manage them in the same way as classic cookies. The advertising agencies and sites quickly understood their usefulness. So they can allow you to refuse cookies but immediately after, they place data This goes so far as to recreate cookies on the fly that you could delete by conventional ways: First-Party Isolation technology is a good way to stop this. I add that I designed a program to translate the global rules created by the user via the old CookieMonster addon, or via the permissions configuration of the visited sites. These rules are stored in the file 'permissions.sqlite' in the Firefox profile, and my project translates them into uMatrix rules: |
ysard , Thank you for a detailed reply. I received a full copy in email & I responded, but realized you may / may not see that reply. I don't know if I want to deal w/ NoScript (NS), uBlockOrigin (uBo) and Matrix - all at once. Otherwise, it's a pain figuring out which scripts / data sites need to function. Even big sites constantly change their CDNs & other 3rd parties that make certain features or data available. It seems these change constantly. Question on your comment:
And the "as above" preferences that Fx 57+ cookie API allows, was:
I asked about CQM's ability to deny cookies globally, then allow them - as desired - after a site is loaded. Your helpful discussion has a lot about Matrix, but I didn't understand if you said CQM could block cookies by default.
Maybe the cookie API allowing blocking cookies globally is a very recent change?
Hopefully, BOTH "Temporary" exceptions - deleted when Fx closes, and "Session" exceptions, saved after Fx closes - but session COOKIES are deleted. Some cookie addons call Session cookies "gray cookies," which seems less descriptive to me, but hey. |
Hi, Indeed the exchanges of messages can be done only via the interface of GitHub.
Today NoScript may be less useful than before uMatrix and uBlockOrigin but it remains an excellent addon. Confidentiality has a price that anyway will increase in the future.
CQM is neither a cookie blocker, nor a firewall blocking multiple requests and tracking attempts based on the use of cookies.
When I say that the API allows to allow or block cookies, it is because it allows to encode a button in an addon that will have exactly the same role as if you configured Firefox preferences: doc: change cookie settings. Fine adjustments are therefore excluded from the API and fall under matrix firewall addons like uMatrix, which in my opinion meets this type of needs.
Yes, matrix firewalls operate in 2 contexts: global or local, with 2 types of duration: temporary or permanent.
Yes session cookies are temporary but you can just edit them by setting an expiration date, so that they become normal cookies. I hope I answered your questions. Regards. |
Here's one of the best examples I can think of for Mozilla allowing "temporary" cookies, only for that session and doesn't store a "session exception." If I want to play something on youtube, I have to allow some google related scripts (unless stream vids in a local player). If I want to read youtube comments, I have to allow "google.com" cookies, AFAIK. I don't want that exception saved as a session exception, because Google is on most sites, except countries that ban them. I don't want Google setting cookies on every site I visit (even session). It's NOT just Google - they're one example. There are dozens if not hundreds of trackers like Google, just not as big & their numbers are growing constantly. The Fx pref, firstPartyIsolate, supposedly stops trackers from correlating 3rd PARTY cookies between sites, but I've never allowed 3rd party cookies & lots of others don't either. I appreciate the detailed info about uMatrix. I'll have to install uMatrix in a clean profile, look at options & play w/ settings. At least uMatrix, uBlcocko, NoScript have wikis & help pages. As with most software, their Guides or wikis don't tell you lots of things. uMatrix isn 't as simple as it sounds. It does say, "For Advanced Users." Typical users won't get it or NoScript or even quite a bit of uBlocko. I don't have enough experience with uMatrix to be certain, but I'd probably use either uMatrix or NoScript with uBlocko, but not all 3. I get it that for CQM, you don't want to add functions to block or allow cookies.
I thought that's what I asked, in general - not just about CQM. Maybe not. But I'm confused by your comment (disregarding CQM's current or future abilities) about the Firefox web ext. cookie API. Maybe I misread your comment:
I understand (now) that you don't want to add these functions to CQM. Firefox 57+ cookie preferences also still allow users to set & save permanent & session cookies, on a PER SITE basis.. Does the current Fx web ext cookie API also allow a dev of a web ext cookie addon to control setting session or permanent cookie exceptions, the same as the web ext cookie API allows Accepting or Rejecting cookies? Is there any Fx web ext addon or a reasonably quick way to create temporary cookies or "turn other cookie types" into temporary ones? Temporary cookies, that enable certain sites to function, but I don't expect to visit the site again, or if I DO visit again, I don't necessarily want to allow session cookies, is a very useful tool. Storing even session cookie exceptions for sites I'll never visit again, -OR- having to search the session cookies or the exceptions - to delete certain ones, is a waste of time. |
Hi, firstly I am sorry for the response time because I have had little time since 2 months.
Writing usage documentation is always a tedious thing because we focus more on the features than on how to use them (which seems innate given the many hours of development).
I agree and that's a problem. Only users sensitive to privacy issues will try to use these tools and among them a fraction will make the effort to understand what it is when the tool offers the detailed blocking (so effective) of cookies, CSS, images, media, scripts, XHR, iframes, etc. Each of these categories can introduce a tracking technique, which is why, most of the time it is good to block at least everything that comes from other sites than the one consulted. I have been on Linux for many years; the parallel is easy because it is quickly realized that the (apparent) complexity is the only way to really master a tool (the Web in this case, which is not the least common tools of our daily life). black boxes that are easy to access do not allow this.
I can add this button but it's out of the subject of this addon and redundant with the button accessible from the browser preferences.
For the moment there is no API for this, dedicated to the cookies which is able to decide on a case by case basis, as it was the case before FF Quantum where we could programmatically modify these parameters which remain accessible from the menu "Information on the page" (Ctrl + I): However, all addon ad blockers use the webRequest API: This is more powerful and allows to manage more precisely what comes in and out of the browser (including cookies).
By using the cookie API, my addon allows you to modify the status of a cookie on a case by case basis. By modifying the "isSession" flag you can specify an expiration date or delete it. Should I think about this type of feature?
In the following release CQM could protect session cookies in one click in the whole store or just those of a domain. Ps: yes uMatrix allows you to work at the domain level and not at the level of cookies in each domain. I can think of an option to systematically convert my protected cookies into session cookies. Once more, sorry for the big block of text... Regards. |
Hello ysard, first of all let me say, do you know user bendover22? If not, wow, you spend so much time to help your anonymous fellow/peer? That's really cool of you! Regarding the issue, I think what would solve bendover22's request would be the option to delete the cookies for the current site (except the protected ones of course) upon leaving or revisiting the page. Because if you delete them before they can be read again cookies serve no purpose, right? And since protected cookies cannot be overwritten either it shouldn't matter at all that Firefox doesn't actually allow not saving cookies for a page (while still being able to read the ones you have saved as protected cookies). So if that's correct the only question is whether someone wants to do it and you'd accept a merge request. That person could possibly copy code from other extensions that already do that (if licenses are compatible) or look up how it's done. If not, people can always use an extension that deletes cookies like https://addons.mozilla.org/en-US/firefox/addon/cookie-autodelete/ , an extension that does that and is recommended by Mozilla. Anyway, I'm already using your extension happily, that protected cookies feature is so useful to me! Thank you for being so helpful and for your contribution to software freedom! |
Hello,
Does cookie-quick-manager now have (or could have) the ability to deny all cookies by default, if user chooses? Then whitelist or graylist sites as they choose?
The cookie API & cookie-quick-manager have the ability to block all 3rd party cookies, yes? Then I don't see why 1st party shouldn't be allowed to block globally - other than an incomplete API.
I've read some discussion about the possibility of deleting cookies immediately after they're set, unless the user chooses not to. Is that a possibility?
Firefox57+ allows denying cookies globally. Why (other than Mozilla is....) can users deny cookies globally from the Fx UI, but webext cookie mgrs don't seem able to deny cookies globally and only allow sites that users want to set cookies?
Webext addons wouldn't be "changing Firefox internal function," when the function is already allowed for users. Is their cookie or other APIs so incomplete, they don't allow the same basic functions as the Fx UI?
I don't want to allow cookies on every site and have to wait until the tab is closed to delete the cookies. Sometimes I forget to close tabs when I'm finished with a site. On some sites, I really don't want to allow cookies at all.
Thanks.
The text was updated successfully, but these errors were encountered: