WebKit / standards-positions

WebKit's positions on emerging web specifications
https://webkit.org/standards-positions/
241 stars 19 forks source link

Iframe credentialless (was: Anonymous iframe) #45

Open ArthurSonzogni opened 2 years ago

ArthurSonzogni commented 2 years ago

Request for position on an emerging web specification

This was previously filled as: https://lists.webkit.org/pipermail/webkit-dev/2022-April/032205.html but didn't get any replies. Since WebKit is now using this new Github Medium, I am asking again. We would appreciate your feedback. In particular, there is a recent discussion with Mozilla who suggested activating it via a sandbox flag instead.

Information about the spec

Design reviews and vendor positions

Bugs tracking this feature

Anything else we need to know

Anonymous iframes give developers a way to load documents in third party iframes using new and ephemeral contexts.

Anonymous iframes are a generalization of COEP credentialless to support 3rd party iframes that may not deploy COEP. Like with COEP credentialless, we replace the opt-in of cross-origin subresources by avoiding to load non-public resources. This will remove the constraint that 3rd party iframes must support COEP in order to be embedded in a COEP page and will unblock developers looking to adopt cross-origin-isolation.

This way, developers using COEP can now embed third party iframes that do not.

annevk commented 1 year ago

I think WebKit's storage policies are already pretty close to the desires of this feature:

I guess that Chromium doesn't mean for cross-site storage to become ephemeral?

ArthurSonzogni commented 1 year ago

Thanks @annevk !

I think WebKit's storage policies are already pretty close to the desires of this feature:

Yes, it has some similar properties indeed, which are nice!

However, at the end, the goal of iframe credentialless is to allow embedding safely non-COEP document inside a COEP one. In particular it must be safe with regards to Spectre attacks, because the parent can be crossOriginIsolated. That's the only "real" feature of iframe credentialess. Everything else are only means to this end.

From the current Safari state, if we wanted to supersede iframe credentialless and allow the embedding without it, I think we would have to:


I guess that Chromium doesn't mean for cross-site storage to become ephemeral?

I don't know myself if there are plans for this, beyond the current plan to bring in partitioning.

annevk commented 6 months ago

It has come to my attention that <iframe credentialless> is sometimes used for payment flows, despite autofill not being supported. Have you heard about this? That makes me very hesitant about this feature as it puts end users at risk, essentially training them to be phished.

ArthurSonzogni commented 6 months ago

+CC @CamilleLamy & @MikeWest, as I haven't worked on