Storage Origin Isolation — Per-Origin localStorage, sessionStorage, Cookies #101
Labels
No labels
bug
docs
feature
housekeeping
html-spec
performance
react-compat
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
glow-all/true-headless-browser#101
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Issue #101 — Storage Origin Isolation — Per-Origin localStorage, sessionStorage, Cookies
Problembeschreibung
Storage ist nicht nach Origin isoliert. Aktuell gibt es:
LocalStorage(src/storage/local-storage.ts) — eine globale Instanz pro PageSessionStorage(src/storage/session-storage.ts) — eine globale Instanz pro PageCookieJar— per-URL gespeichert, aber ohne SameSite/Path-PrüfungSpec-konform muss sein:
localStorage['https://site-a.com']≠localStorage['https://site-b.com']sessionStorageist pro Tab/Page, geteilt zwischen iFrames gleicher OriginSameSite,Secure,Path,Domainkorrekt ausgewertetStorageEventbei Cross-Tab-Änderungen (vereinfacht)document.cookieliest/schreibt nur Cookies für aktuelle Origin + PathLösung — Storage Origin Buckets
StorageBucket:
Akzeptanzkriterien
localStoragepro Origin isoliert (site-a.com ≠ site-b.com)sessionStoragepro Page, geteilt zwischen iFrames gleicher OriginSameSite=Laxblockiert Cross-Site-RequestsSecurewird nur über HTTPS gesendetPath=/foomatcht nur /foo und /foo/barDomain=.example.commatcht sub.example.comdocument.cookieschreibt nur für aktuelle Origin + PathStorageEventbei localStorage Änderung (vereinfacht)Max-Age/Expireswird ausgewertetBetroffene Dateien
src/storage/local-storage.tssrc/storage/session-storage.tssrc/storage/storage-manager.tssrc/storage/storage-bucket.tssrc/storage/storage-event.tssrc/network/cookies.tssrc/runtime-isolation.tstests/unit/storage-origin.test.tsTestplan