Thanks all. We will proceed to launch on all Blink platforms.

On Wednesday, January 8, 2025 at 10:26:01 AM UTC-5 Rick Byers wrote:

> LGTM3
>
> On Wed, Jan 8, 2025 at 9:29 AM Mike Taylor <miketa...@chromium.org> wrote:
>
>> Thanks for the updates Chris. LGTM2.
>> On 1/7/25 10:35 PM, Yoav Weiss (@Shopify) wrote:
>>
>>
>>
>> On Tue, Jan 7, 2025 at 10:31 PM Chris Fredrickson <cfred...@chromium.org> 
>> wrote:
>>
>>> Minor updates: 
>>>
>>> Mike Taylor previously noted 
>>> <https://groups.google.com/a/chromium.org/g/blink-dev/c/5-SQmyp95U0/m/ibM_3pbcAAAJ>
>>>  
>>> a possible concern about naming. Ben VanderSloot (Mozilla) indicated 
>>> <https://github.com/mozilla/standards-positions/issues/1084> that 
>>> they're not concerned about the names, so this concern has been resolved.
>>>
>>> I also started a thread in blink-api-owners-discuss about whether we can 
>>> also ship on WebView (given the earlier discussion), though I think it's 
>>> still waiting for approval from a moderator.
>>>
>>
>> FWIW, my LGTM still stands if we're expanding scope to cover WebView. 
>>
>>
>>> On Monday, January 6, 2025 at 10:28:53 AM UTC-5 Chris Fredrickson wrote:
>>>
>>>> On Monday, January 6, 2025 at 10:08:53 AM UTC-5 Peter Pakkenberg wrote:
>>>>
>>>> Hi Chris, 
>>>>
>>>> > The Storage Access API itself is not yet supported on Android WebView.
>>>>
>>>> WebView does support the Storage Access JS methods, but lacks a way to 
>>>> grant permission, which we are currently working on adding. Once that work 
>>>> is done, the already exposed JS interfaces will be usable by web content.
>>>>
>>>>
>>>> Thanks for the clarification, I was a bit imprecise there.
>>>>  
>>>>
>>>>
>>>> I also don’t see any code to explicitly disable the 
>>>> kStorageAccessHeaders flag on WebView, so if the feature flag is flipped 
>>>> to 
>>>> enabled by default, then this feature will be launched on WebView.
>>>>
>>>>
>>>> That's correct; my plan was to disable the feature on WebView using 
>>>> AwFieldTrials::RegisterFeatureOverrides 
>>>> <https://source.chromium.org/chromium/chromium/src/+/main:android_webview/browser/aw_field_trials.cc;drc=57e439af5bc1022525302dc8c3e25f8c7c10e445;l=86>
>>>>  in 
>>>> the same CL that default-enables the feature.
>>>>  
>>>>
>>>>
>>>> Is there any reason why the header feature should not be supported by 
>>>> WebView?
>>>>
>>>>
>>>> There's no reason why WebView shouldn't support this feature. I'm not 
>>>> opposed to including WebView when this feature ships, given what you said 
>>>> above!
>>>>  
>>>>
>>>>
>>>> On Friday, January 3, 2025 at 4:44:35 PM UTC Yoav Weiss wrote:
>>>>
>>>> LGTM1
>>>>
>>>> This seems like a reasonable optimization, and I like plans to optimize 
>>>> this further. The immediate compat risk does indeed seem tiny. (but please 
>>>> keep the flag around just in case) 
>>>>
>>>> On Fri, Jan 3, 2025 at 4:58 PM Chris Fredrickson <cfred...@chromium.org> 
>>>> wrote:
>>>>
>>>>
>>>>
>>>> On Thursday, January 2, 2025 at 10:53:50 PM UTC-5 Yoav Weiss wrote:
>>>>
>>>> On Thu, Jan 2, 2025 at 7:36 PM Chris Fredrickson <cfred...@chromium.org> 
>>>> wrote:
>>>>
>>>> Contact emails 
>>>>
>>>> sled...@google.com, johann...@chromium.org, cfred...@chromium.org
>>>>
>>>> Explainer 
>>>>
>>>> https://github.com/privacycg/storage-access-headers
>>>>
>>>>
>>>> Do I understand correctly and the extra RTT imposed by the "retry" is 
>>>> required for security reasons 
>>>> <https://github.com/privacycg/storage-access-headers?tab=readme-ov-file#opt-in-signal>
>>>> ?
>>>>
>>>>
>>>> Yes, the additional round trip is necessary for security. (We recognize 
>>>> that an extra round trip is not ideal, and we're working on a way to "
>>>> reuse <https://github.com/privacycg/storage-access-headers/pull/22>" 
>>>> the security signal provided by one round trip for subsequent requests.)
>>>>  
>>>>
>>>>  
>>>>
>>>>
>>>> Specification 
>>>>
>>>> https://privacycg.github.io/storage-access-headers
>>>>
>>>> Summary 
>>>>
>>>> Storage Access Headers offer an alternate way for authenticated embeds 
>>>> to opt in to unpartitioned cookies. These headers indicate whether 
>>>> embedded 
>>>> resources should load with permission they have already been granted, 
>>>> reducing loads and latency overall for these use cases.
>>>>
>>>>
>>>> Blink component 
>>>>
>>>> Blink>StorageAccessAPI 
>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EStorageAccessAPI>
>>>>
>>>> Search tags 
>>>>
>>>> storage access api 
>>>> <https://chromestatus.com/features#tags:storage%20access%20api>, storage 
>>>> access headers 
>>>> <https://chromestatus.com/features#tags:storage%20access%20headers>
>>>>
>>>> TAG review 
>>>>
>>>> https://github.com/w3ctag/design-reviews/issues/982.
>>>>
>>>> TAG review status 
>>>>
>>>> Satisfied in early design review. TAG didn’t expect to have major input 
>>>> on the spec and invited us to proceed without their spec review. 
>>>>
>>>> Chromium Trial Name 
>>>>
>>>> StorageAccessHeader
>>>>
>>>> Origin Trial documentation link 
>>>>
>>>> https://github.com/cfredric/storage-access-headers
>>>>
>>>> Risks
>>>>
>>>> Interoperability and Compatibility 
>>>>
>>>> This feature poses a minor compatibility risk, since the Origin header 
>>>> is now included on requests that include the "Sec-Fetch-Storage-Access: 
>>>> inactive" header - and some servers do not yet properly handle the Origin 
>>>> header.
>>>>
>>>> However, this risk is low, because:
>>>>
>>>> * The "inactive" header is only included on clients that already block 
>>>> third-party cookies.
>>>>
>>>> * The presence of the "inactive" header implies that the request is 
>>>> cross-site, and that the site in question already uses the Storage Access 
>>>> API (which is relatively new to the web platform) or that the context is 
>>>> an 
>>>> "A > B > A" embedding scenario.
>>>>
>>>> * This feature omits the Origin header from requests whose 
>>>> `credentials` mode is not "include".
>>>>
>>>>
>>>> Hmm, so we'd start sending the Origin header on no-CORS requests?
>>>>
>>>>
>>>> That's correct - but only if the recipient site has already been 
>>>> granted the "storage-access" permission (or the request context is an 
>>>> A>B>A 
>>>> embed, so no explicit permission grant is needed) *and* the request's 
>>>> credentials mode is "include". I.e., only if the value of the 
>>>> Sec-Fetch-Storage-Access header is "inactive".
>>>>  
>>>>
>>>> Have we tried to quantify that risk? Finch it in some way? 
>>>>
>>>>
>>>> We have UMA metrics on Dev that can help upper-bound the risk. On 
>>>> Windows clients that have manually enabled this feature, 6k out of 88M 
>>>> cross-site requests (about 0.00007%) included the Sec-Fetch-Storage-Access 
>>>> header and set its value to "inactive". (On Mac, Linux, and Android, these 
>>>> numbers are 0.0001%, 0.0004%, and 0.0005%, respectively.) These numbers 
>>>> are 
>>>> an overestimate of the expected breakage, since they only count cross-site 
>>>> requests, and presumably some of those requests were to servers that 
>>>> handle 
>>>> the Origin header properly.
>>>>
>>>> Those metrics are a limited sample and are certainly biased since they 
>>>> come from Dev clients that have manually enabled the feature. But those 
>>>> fractions are small enough to make me feel more comfortable launching 
>>>> this. 
>>>> (Anecdotally, I've been running Chrome with this feature enabled for 
>>>> months 
>>>> on my corp and personal profiles, and haven't run into any noticeable 
>>>> breakage.)
>>>>  
>>>>
>>>>  
>>>>
>>>>
>>>>
>>>> Gecko: No signal (https://github.com/mozilla/st
>>>> andards-positions/issues/1084)
>>>>
>>>> WebKit: No signal (https://github.com/WebKit/sta
>>>> ndards-positions/issues/412)
>>>>
>>>> Web developers: Positive (https://github.com/privacycg/
>>>> storage-access/issues/130) Other feature requests: * 
>>>> https://github.com/privacycg/storage-access/issues/170 * 
>>>> https://github.com/privacycg/storage-access/issues/189
>>>>
>>>> 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?
>>>>
>>>> None
>>>>
>>>>
>>>> Debuggability 
>>>>
>>>> This is debuggable via DevTools and via chrome://net-export.
>>>>
>>>>
>>>> Will this feature be supported on all six Blink platforms (Windows, 
>>>> Mac, Linux, ChromeOS, Android, and Android WebView)? 
>>>>
>>>> No
>>>>
>>>> The Storage Access API itself is not yet supported on Android WebView.
>>>>
>>>>
>>>> Is this feature fully tested by web-platform-tests 
>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>>>> ? 
>>>>
>>>> Yes
>>>>
>>>> DevTrial instructions 
>>>>
>>>> https://developers.google.com/privacy-sandbox/blog/storage-a
>>>> ccess-api-headers-logic
>>>>
>>>> Flag name on chrome://flags 
>>>>
>>>> storage-access-headers
>>>>
>>>> Finch feature name 
>>>>
>>>> StorageAccessHeaders
>>>>
>>>> Requires code in //chrome? 
>>>>
>>>> False
>>>>
>>>> Tracking bug 
>>>>
>>>> https://b.corp.google.com/issues/329698698
>>>>
>>>> Launch bug 
>>>>
>>>> https://launch.corp.google.com/launch/4309903
>>>>
>>>> Measurement 
>>>>
>>>> We've written metrics to track the usages of the "load" and "retry" 
>>>> response headers, and to measure the incidences of each variant of the 
>>>> request header.
>>>>
>>>> Sample links
>>>>
>>>> https://storage-access-headers-demo.glitch.me
>>>>
>>>> Estimated milestones 
>>>>
>>>> Origin trial desktop first
>>>>
>>>> 130
>>>>
>>>> Origin trial desktop last
>>>>
>>>> 135
>>>>
>>>> Origin trial Android first
>>>>
>>>> 130
>>>>
>>>> Origin trial Android last
>>>>
>>>> 135
>>>>
>>>>
>>>> Anticipated spec changes 
>>>>
>>>> Open questions about a feature may be a source of future web 
>>>> compatibility or interoperability issues. Please list open issues (e.g. 
>>>> links to known github issues in the project for the feature specification) 
>>>> whose resolution may introduce web compat/interop risk (e.g., changing to 
>>>> naming or structure of the API in a non-backward-compatible way).
>>>>
>>>> None
>>>>
>>>> Anticipated implementation changes 
>>>>
>>>> We decided not to separately integrate the “Activate-Storage-Access” 
>>>> header with the SAA Permissions Policy in this initial version. The 
>>>> follow-up work to figure out the integration is tracked in 
>>>> https://crbug.com/382291442. Because of how SAH works this header 
>>>> already “benefits” from the SAA PP by default (SAH won’t work if there’s 
>>>> no 
>>>> SAA permission grant), and we haven’t seen developer demand for being able 
>>>> to prevent just the header, but not SAA itself. The implementation carries 
>>>> a surprising amount of architectural complexity, but we do plan to follow 
>>>> up with this for completeness. Most importantly, adding this later is 
>>>> unlikely to cause compat risks because SAA has a “*” default allow-list, 
>>>> so 
>>>> we won't be changing default behavior.
>>>>
>>>> Link to entry on the Chrome Platform Status 
>>>>
>>>> https://chromestatus.com/feature/6146353156849664?gate=6138146145435648
>>>>
>>>> Links to previous Intent discussions 
>>>>
>>>> Intent to Prototype: https://groups.google.com/a/ch
>>>> romium.org/d/msgid/blink-dev/CABa1CXyMJzMmpQkZMwQUFGK8-f%3DE
>>>> erhR2VQbTZephdmE22W%2ByA%40mail.gmail.com
>>>>
>>>> Intent to Experiment: https://groups.google.com/a/ch
>>>> romium.org/d/msgid/blink-dev/CABa1CXyYbxwh%3DPdnigTW80d9jez_
>>>> 835R1SV1bQPDjvk1ra5G4g%40mail.gmail.com
>>>>
>>>>
>>>> This intent message was generated by Chrome Platform Status 
>>>> <https://chromestatus.com/>.
>>>>
>>>> -- 
>>>> 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 visit https://groups.google.com/a/ch
>>>> romium.org/d/msgid/blink-dev/1bbe492c-8722-4dbf-8342-82f59fb
>>>> b0bd2n%40chromium.org 
>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/1bbe492c-8722-4dbf-8342-82f59fbb0bd2n%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 visit 
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohS%2BUjZy0vax%2B_u31q-WTHCrRo5%2B9%2BP6W6yF8LH%3DgdJJy1A%40mail.gmail.com
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOmohS%2BUjZy0vax%2B_u31q-WTHCrRo5%2B9%2BP6W6yF8LH%3DgdJJy1A%40mail.gmail.com?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 visit 
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e1b34c1a-ae7a-40d1-80f7-6b0ac2c58c4a%40chromium.org
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e1b34c1a-ae7a-40d1-80f7-6b0ac2c58c4a%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 visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/e7c875b9-8f29-4478-bd48-bd8c2fe32721n%40chromium.org.

Reply via email to