Skip to content

Consider removing enforced CSP rules from Report-Only header #17267

Description

@janbrasna

Non-enforced rules currently contain a copy of enforced policy as a starting point. Which means RO project is flooded with the same known (and usually inactionable) reports as prod. That doesn’t lend itself to great visibility of extra changes added/removed contemplated to potentially move from RO to prod.

Unless an intention is to test interaction of some of the enforced rules with the RO ones inside the same policy, there’s most likely no reason to spam the ingestion project with all of the same by default.

(NB: e.g. currently there are no rules under RO consideration — meaning RO reports the exact same policy violations as prod, just burning quota and being obnoxious.)

Wondering if having no deepcopy as the starting point would be better angle here, leading to empty header if RO tweaks are empty potentially even dropping it from output, and in case an engineer needs to start with a copy of some of the definitions, they’d make it their call whether and how much they need to lift from the prod rules to make their RO representative enough?


Success Criteria

  • Lower noise from known non–RO violations duplicated into RO project too
  • Better visibility into RO–specific violations
  • In case CSP RO header is not needed i.e. when empty skip emitting it

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions