Skip to content

Initializing a document's CSP list requires synchronous cross-process access #389

@bzbarsky

Description

@bzbarsky

https://w3c.github.io/webappsec-csp/#initialize-document-csp step 1.1 examines "request’s client’s global object’s CSP list". The request's client's global object can be in a different process in a variety of cases: noopener/noreferrer loads, sandboxed documents with process-per-origin, data: documents with process-per-origin, etc.

I thought this had been discussed before and what Chrome actually does is store a snapshot of the client's CSP on the load and then initialize from that, but I can't find an existing issue tracking this. If that's what Chrome does (and this is what I think I'd like Firefox to do), then it's observably different from the spec as written right now if the CSP of the client global is mutated (via <meta>) between the load start and the initialization of the resulting document, and we should be able to write tests for this...

@annevk @mikewest @andypaicu @ckerschb @dveditz

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-infoIndicates an issue that is blocked waiting for a response or investigation

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions