Apologies for my slowness!

On Thu, Apr 6, 2023 at 2:01 AM Mike Taylor <miketa...@chromium.org> wrote:

> On 4/4/23 11:51 PM, Yoav Weiss wrote:
>
> Thanks for working on this!!
> Aligning with Safari and Firefox on this means that this is important not
> just for user privacy, but also from an interop perspective. It also gives
> us some confidence that this deprecation can be successful.
>
> This is effectively a deprecation, but one where I can't think of a
> reasonable way to measure usage, so it seems to me that a careful rollout +
> deprecation trial (as you're suggesting) is the way to go here.
>
> Yeah, I'm hopeful that the web has adjusted to this as the norm given
> Firefox and Safari's behavior, but we know that Firefox had some site
> breakage to deal with when they first introduced the feature, so I'd rather
> be cautious with the rollout to avoid any major incidents.
>
> Is the deprecation trial enabled as a 3P OT? That may ease the deployment
> for platform providers that have a hard time shipping header changes to a
> large set of origins.
>
> We made the decision to not support 3Ps for the deprecation trial.
> Instead, when a site enables the Deprecation trial, all of its embedded
> frames will have a 1st party StorageKey. Our thinking was that we wanted
> the embedder to be in control of its users' storage, rather than the
> embeddee. But if this turns out to be untenable, we're open to considering
> making this work as a 3P trial as well.
>

The scenario I'm slightly concerned about is a large platform (ecommerce,
CRM, etc) with a ~gazillion different customer origins, that is currently
relying on any of these APIs to communicate common state (e.g. checkout
flows).
Such a platform would most probably be able to opt-in using a 3P OT (by
delivering a common origin script that does the opt-in), but may not be
able to opt-in each origin individually.
It's probably fine to make sure that only the top-level frame can
participate in the 3P OT, although I'm not 100% sure if that's how 3P OTs
are currently wired.
+Panos Astithas <pastit...@google.com> may know.


Also, have we reached out to the usual suspects to make sure they test this
> change ahead of time?
>
> We have been in touch with some partners through our partnership team, and
> other top sites as well. :)
>
>
> On Wed, Apr 5, 2023 at 12:44 AM Mike Taylor <miketa...@chromium.org>
> wrote:
>
>> *Contact emails*
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> * wanderv...@chromium.org <wanderv...@chromium.org>, m...@chromium.org
>> <m...@chromium.org>, mikety...@chromium.org <mikety...@chromium.org>
>> Explainer
>> https://github.com/wanderview/quota-storage-partitioning/blob/main/explainer.md
>> <https://github.com/wanderview/quota-storage-partitioning/blob/main/explainer.md>
>> Specification Partitioned Storage is roughly specified at
>> https://privacycg.github.io/storage-partitioning/
>> <https://privacycg.github.io/storage-partitioning/>. As part of this work,
>> we have started to codify the necessary concepts in HTML, DOM, and Storage
>> in the following PRs: https://github.com/whatwg/storage/pull/144
>> <https://github.com/whatwg/storage/pull/144>
>> https://github.com/whatwg/dom/pull/1142
>> <https://github.com/whatwg/dom/pull/1142/files>
>> https://github.com/whatwg/html/pull/8447
>> <https://github.com/whatwg/html/pull/8447>  We have also updated other APIs
>> to use StorageKey (ServiceWorker [1
>> <https://github.com/w3c/ServiceWorker/pulls?q=is%3Apr+is%3Aclosed+partition>],
>> BroadcastChannel [1 <https://github.com/whatwg/html/pull/7567>],
>> SharedWorker[1 <https://github.com/whatwg/html/pull/7995>]), and landed
>> necessary additions to Storage itself ([1
>> <https://github.com/whatwg/storage/commit/bea19b70f497d7059c920b9f0a81ac8f49bd36ed>][2
>> <https://github.com/whatwg/storage/commit/c68c38413c02496114d51af28caa83d11689d300>]).
>> What we thought to be a straightforward set of changes has evolved to be a
>> more complex refactoring, per the request of HTML editors. We propose to
>> ship with a WIP spec spread out across the PRs above (noting that Firefox
>> and Safari have already shipped partitioned storage). That said, we intend
>> to finish this work. Summary We intend to partition a number of APIs in
>> third-party contexts. This effort is focused on partitioning APIs above the
>> network stack. This includes quota-managed storage, service workers, and
>> communication APIs (like BroadcastChannel). See the explainer for more
>> details:
>> https://github.com/wanderview/quota-storage-partitioning/blob/main/explainer.md
>> <https://github.com/wanderview/quota-storage-partitioning/blob/main/explainer.md>
>> Blink component Blink>Storage TAG review
>> https://github.com/w3ctag/design-reviews/issues/629
>> <https://github.com/w3ctag/design-reviews/issues/629>  TAG review status
>> Resolution: Satisfied Risks Interoperability and Compatibility Given that
>> Firefox and Safari have already shipped this feature, we expect our
>> implementation to be interoperable. We are aware of breakage
>> <https://github.com/privacycg/storage-partitioning/issues/34#issuecomment-1194358637>
>> for sites that use Firebase for authentication (because it relies on being
>> able to access unpartitioned sessionStorage). Firebase has blogged on how
>> sites can mitigate this issue
>> <https://firebase.google.com/docs/auth/web/redirect-best-practices>. We
>> built a deprecation trial specifically for the sessionStorage redirect use
>> case, which should work for Firebase users. In addition, we have a general
>> deprecation trial available and enterprise policies in place. See below for
>> more info on the deprecation trials. We’ve made storage partitioning
>> available for local testing in Chrome for the past 6 months
>> <https://developer.chrome.com/en/blog/storage-partitioning-dev-trial/>.
>> Apart from Firebase, we’re not aware of any existing compatibility issues
>> that can’t be solved by the deprecation trials
>> <https://developer.chrome.com/blog/storage-partitioning-deprecation-trial/>.
>> There may be unforeseen contexts and use cases that rely on unpartitioned
>> storage and as such, we propose to roll this feature out carefully via
>> Finch, according to the following proposed schedule: May 9th: 1% of Stable
>> population (approximately 1 week after M113 is released) May 23rd: 10% June
>> 6th: 50% June 20th: 100% As usual, if we identify concerning metrics,
>> regressions, or site breakage reports, we may pause or roll back to
>> investigate or address issues. Deprecation trial instructions:
>> https://developer.chrome.com/blog/storage-partitioning-deprecation-trial/
>> <https://developer.chrome.com/blog/storage-partitioning-deprecation-trial/>
>> Gecko: Shipped/Shipping WebKit: Shipped/Shipping Web developers: Mixed
>> signals. Some developers have expressed compatibility concerns, others have
>> been supportive. Other signals: WebView application risks Does this intent
>> deprecate or change behavior of existing APIs, such that it has potentially
>> high risk for Android WebView-based applications? No, we don’t intend to
>> turn this on for WebView yet. Debuggability DevTools has support for
>> partitioned storage. Will this feature be supported on all six Blink
>> platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?
>> No (not WebView) Is this feature fully tested by web-platform-tests? Yes.
>> We’ve written WPTs to verify our 3rd party storage partitioning. Flag name
>> ThirdPartyStoragePartitioning Requires code in //chrome? Nope Tracking bug
>> https://bugs.chromium.org/p/chromium/issues/detail?id=1191114
>> <https://bugs.chromium.org/p/chromium/issues/detail?id=1191114>  Launch bug
>> https://launch.corp.google.com/launch/4214498
>> <https://launch.corp.google.com/launch/4214498>  Anticipated spec changes
>> Open questions about a feature may be a source of future web compat or
>> interop issues. Please list open issues (in other words, links to known
>> GitHub issues in the project, for the feature specification) whose
>> resolution may introduce web compat/interop risk (such as changes to naming
>> or structure of the API in a non-backward-compatible way). None Link to
>> entry on the Chrome Platform Status
>> https://chromestatus.com/feature/5723617717387264
>> <https://chromestatus.com/feature/5723617717387264>  Links to previous
>> Intent discussions Intent to Prototype:
>> https://groups.google.com/a/chromium.org/g/blink-dev/c/WXNzM0WiQ-s/m/l10NGhaoAQAJ
>> <https://groups.google.com/a/chromium.org/g/blink-dev/c/WXNzM0WiQ-s/m/l10NGhaoAQAJ>
>> Intent to Experiment:
>> https://groups.google.com/a/chromium.org/g/blink-dev/c/FNi-nNC8fiw/m/gNftPAzUBgAJ
>> <https://groups.google.com/a/chromium.org/g/blink-dev/c/FNi-nNC8fiw/m/gNftPAzUBgAJ>
>> *
>> --
>> You received this message because you are subscribed to the Google Groups
>> "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to blink-dev+unsubscr...@chromium.org.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e8540107-85b2-a113-6347-1290c23f6379%40chromium.org
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e8540107-85b2-a113-6347-1290c23f6379%40chromium.org?utm_medium=email&utm_source=footer>
>> .
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to blink-dev+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAL5BFfU%2BjPmtD-%2BvZvsfgyHjJgWJ3bF3LOE_iC4cAH_xDVERww%40mail.gmail.com.

Reply via email to