← Back to release summary

Reporting API: Isolate reports per-document and support the Reporting-Endpoints header

Category
Miscellaneous
Type
Chromium catches up
Status
In developer trial (Behind a flag) (Chrome 96)
Intent stage
Start prototyping

Summary

Splits the reporting cache into a per-document cache for document-generated reports, and the existing cache for network reports. There is currently a single reporting cache per profile, which means that reports from unrelated documents can potentially be sent in a single request. This also introduces the Reporting-Endpoints HTTP response header for non-persistent configuration of document-generated reports.

Motivation

In order to mitigate privacy concerns with the Reporting API, several changes have been made to the spec: Per-document reports (such as policy violation reports or deprecation repots) have been separated from network reports (such as network error logging) and should be cached separately. This avoids an issue where reports from unrelated documents could be sent together, potentially allowing a users actions on separate sites to be correlated. To avoid creating a persistent cookie or tracking identifier for per-document reports, the existing persistent Report-To header is being replaced with a new Reporting-Endpoints header, which affects only the document it is returned with.

Standards & signals

Docs: https://docs.google.com/document/d/1dls0BWp5K-g0tbPUkbm5yEBZ5ye1ErZTz4FB6M62lI8/edit?usp=sharing https://docs.google.com/document/d/1RmEz17pGSUQITPoRKV4s3IBgbyHjv-HLZqtVYYZ4lMg/edit?usp=sharing

Explainers: https://github.com/w3c/reporting/blob/master/EXPLAINER.md

View on chromestatus.com