-
Notifications
You must be signed in to change notification settings - Fork 56
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
Extending Storage Access API (SAA) to non-cookie storage #906
Comments
Hi @archiv - thanks for this - we appreciate the cross-implementer consensus that seems to be developing around the user needs of this feature. We understand the user need and appreciate the effort to not add any additional security or privacy issues. We've been discussing the "API shape" issue in today's breakout. We're going to discuss further in our plenary call and we hope to leave further feedback. |
Thanks! The shape implemented for the chrome OT is here: https://github.com/privacycg/saa-non-cookie-storage/blob/main/idl.md |
Hi @arichiv - can you clarify where this work is being done? If it's being done in privacy CG, is there a plan to move the work to the Privacy CG repo instead of a personal repo? |
There is a plan to move it to the Privacy CG repo, we have been waiting on feedback from WebKit and Mozilla as well as initial feedback from the origin trial that just went live: https://developer.chrome.com/blog/saa-non-cookie-storage |
Hi @archiv thanks again for sending this our way. We're happy with the way this is proceeding. We're happy with the use cases and API shape. And we're pleased to see the multi-implementer consensus taking shape. |
Two additional explainers (each of which is an extension to Storage Access API (SAA) to non-cookie storage) have been published! Explainer: Extending Storage Access API (SAA) to omit unpartitioned cookies Explainer: Extending Storage Access API (SAA) to Shared Workers Would it be possible to get review on this issue of those as well? |
こんにちは TAG-さん!
I'm requesting a TAG review of Extending Storage Access API (SAA) to non-cookie storage.
We propose an extension of the Storage Access API (backwards compatible) to allow access to unpartitioned (cookie and non-cookie) storage in a third-party context, and imagine the API mechanics to be roughly like this (JS running in an embedded iframe):
// Request a new storage handle via rSA (this should prompt the user)
let handle = await document.requestStorageAccess({all: true});
// Write some cross-site localstorage
handle.localStorage.setItem("userid", "1234");
// Open or create an indexedDB that is shared with the 1P context
let messageDB = handle.defaultBucket.indexedDB.open("messages");
The same flow would be used by iframes to get a storage handle when their top-level ancestor successfully called rSAFor, just that in this case the storage-access permission was already granted and thus the rSA call would not require a user gesture or show a prompt, allowing for “hidden” iframes accessing storage.
Further details:
You should also know that...
There has been increasing developer and implementer interest in first-party DOM Storage and Quota Managed Storage being available in third-party contexts the same way that Cookies already can be. In the absence of such a solution, we would in effect be pushing developers to migrate to Cookies from other storage mechanisms. There are significant tradeoffs between Cookie and non-Cookie storage (size, flexibility, server exposure, network request size, etc.) that could cause a detriment in user experience from a privacy, security and performance perspective. To prevent sub-optimal use of cookies and to preserve context, we propose a solution for developers to regain 3p access to unpartitioned storage in select instances to avoid user-facing breakage in browsers shipping storage partitioning.
We'd prefer the TAG provide feedback as (please delete all but the desired option):
💬 leave review feedback as a comment in this issue and @-notify @arichiv
The text was updated successfully, but these errors were encountered: