Document-Isolation-Policy #995
Labels
Focus: Security (pending)
Progress: pending external feedback
The TAG is waiting on response to comments/questions asked by the TAG during the review
security-tracker
Group bringing to attention of security, or tracked by the security Group but not needing response.
Topic: security features
Venue: WHATWG
Venue: WICG
こんにちは TAG-さん!
I'm requesting a TAG review of Document-Isolation-Policy.
Developers want to build applications that are fast using SharedArrayBuffers (SAB), which can improve computation time by ~40%. But SharedArrayBuffers allow to create high-precision timers that can be exploited in a Spectre attack, allowing to leak cross-origin user data. To mitigate the risk, SharedArrayBuffers are gated behind crossOriginIsolation (COI). CrossOriginIsolation requires to deploy both Cross-Origin-Opener-Policy (COOP) and Cross-Origin-Embedder-Policy (COEP). Both have proven hard to deploy, COOP because it prevents communication with cross-origin popups, and COEP because it imposes restrictions on third-party embeds. Finally, the whole COOP + COEP model is focused on providing access to SharedArrayBuffers to the top-level frame. Cross-origin embeds can only use SABs if their embedder deploys crossOriginIsolation and delegates the permission to use COI-gated APIs, making the availability of SABs in third-party iframes very unreliable.
Document-Isolation-Policy, is proposing to solve these deployment concerns by relying on the browser Out-of-Process-Iframe capability. It will provide a way to securely build fast applications using SharedArrayBuffers while maintaining communication with cross-origin popups (needed for OAuth and payment flows) and not requiring extra work to embed cross-origin iframes. Finally, it will be available for embedded widgets as well as top-level frames, allowing to build efficient compute heavy widgets that are embedded across a variety of websites (e.g. photo library, video conference iframe, etc….
Further details:
You should also know that...
This proposal is solving the same issues as our previous proposal COOP: restrict-properties. This new proposal is meant to replace the old one.
The text was updated successfully, but these errors were encountered: