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

explicit revoke and automatic expiry #7

Closed
michael-oneill opened this issue Feb 5, 2020 · 5 comments
Closed

explicit revoke and automatic expiry #7

michael-oneill opened this issue Feb 5, 2020 · 5 comments

Comments

@michael-oneill
Copy link

There should be a way for embedded contexts to explicitly revoke their storage access if they no longer need it, along with a way to pass an expiry time parameter when they call requestStorageAccess.
The expiry time would be limited to a overall browser enforced maximum.

@othermaciej
Copy link

Giving up storage access is of limited effectiveness, since the frame has already had a chance to read state by then, and could be storing it in a variable. Sure, it won't see new writes, but if all it wanted to do is read a unique ID, it won't be affected. Given all that, what is the use case for revocation?

I'm also unsure about automatic expiration based on a timeout. I guess since there's a browser enforced maximum, this is intended as an action on behave of the user, but I'm not clear on the threat it protects against.

@michael-oneill michael-oneill changed the title explicit revoke and utomatic expiry explicit revoke and automatic expiry Feb 5, 2020
@michael-oneill
Copy link
Author

michael-oneill commented Feb 5, 2020

Once storage access is revoked there will be no access to cookies or localStorage to embeds. Anything stored in javascript variables would only apply to the context which had storage access, but in subsequent contexts after expiry it is lost.
This less about mitigating a threat than encouraging good data protection discipline by the companies using embeds, e.g. data limitation and freely-given user consent as a legal basis. If consent is obtained it must be capable of being withdrawn at any time, and as easy to withdraw as to give.

@annevk
Copy link
Collaborator

annevk commented Feb 5, 2020

Well, we don't have revocation APIs for other permissions. It's not immediately clear to me the site should have a say in that. (It also opens up new abuse vectors that would have to be thought through and closed, for instance.)

@michael-oneill
Copy link
Author

If you mean by site the embed, then it does have a say - It is actively calling requestStorageAccess. Once data access is no longer needed it should be able to revoke.
The top level site does not have a say, true, but that is another issue. It should have the ability to block all or some embeds being given access, say by FP header.

@hober
Copy link
Member

hober commented Apr 27, 2020

I'm going to close out this issue, as I think the discussion has run its course. Please let me know if we should re-open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants