Skip to content
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

Disable prompting in third parties #87

Open
annevk opened this issue May 2, 2020 · 3 comments
Open

Disable prompting in third parties #87

annevk opened this issue May 2, 2020 · 3 comments
Labels
privacy-tracker Group bringing to attention of Privacy, or tracked by the Privacy Group but not needing response. security/privacy There are security or privacy implications security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response.

Comments

@annevk
Copy link
Member

annevk commented May 2, 2020

In Firefox we disabled the capability for a third-party to prompt for the persistent storage permission.

Doing this helps with https://privacycg.github.io/storage-partitioning/ and also helps reduce the number of prompts where the third-party is shown.

(Delegation through the allow="" attribute does not work, unless we reinterpret that as the first-party sharing its storage area, but that should probably be its own issue if there's interest in that kind of thing.)

This would be easy to add by adding a check for origin != top-level origin in the relevant places. Is there interest from Chrome?

cc @inexorabletash

@annevk annevk added security/privacy There are security or privacy implications privacy-tracker Group bringing to attention of Privacy, or tracked by the Privacy Group but not needing response. security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response. labels May 2, 2020
@inexorabletash
Copy link
Member

Sounds good to me.

@pwnall
Copy link
Contributor

pwnall commented May 3, 2020

Just to clarify, not being able to prompt means that calling navigator.storage.persist() would return true if the origin already has persistent storage, and false otherwise?

I'm asking because there's an interpretation where navigator.storage.persist() is what does the prompting, and maybe this suggestion is about having the function reject in third-party contexts.

As far as I know, Chrome never prompts for persistent storage. If the first interpretation is the valid one, this would be a no-op for us today.

Looking towards the future, I think we're generally very supportive of not allowing code in third-party frames to show permission prompts.

@annevk
Copy link
Member Author

annevk commented May 3, 2020

I guess what I'm really after is that a third-party that has never been visited as a first-party cannot get a hold of this capability.

@jyasskin I guess what I need here is a way to do

Let permission be the result of requesting permission to use "persistent-storage".

while returning false if the current state is "prompt".

I guess I could do what the first step of that algorithm does, but it isn't really scoped to anything. Hmm.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
privacy-tracker Group bringing to attention of Privacy, or tracked by the Privacy Group but not needing response. security/privacy There are security or privacy implications security-tracker Group bringing to attention of security, or tracked by the security Group but not needing response.
Development

No branches or pull requests

3 participants