Content-Security-Policy-Report-Only header

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since August 2016.

Tiêu đề HTTP Content-Security-Policy-Report-Only phản hồi giúp giám sát các vi phạm Content Security Policy (CSP) và các hiệu ứng của chúng mà không thực thi các chính sách bảo mật. Tiêu đề này cho phép bạn kiểm tra hoặc sửa các vi phạm trước khi một Content-Security-Policy cụ thể được áp dụng và thực thi.

Chỉ thị CSP report-to phải được chỉ định để các báo cáo được gửi: nếu không, thao tác sẽ không có hiệu lực.

Các vi phạm chính sách có thể được báo cáo bằng cách sử dụng Reporting API. Các báo cáo có thể được quan sát trong trang mà chính sách đang được thực thi, sử dụng ReportingObserver, và gửi đến các điểm cuối máy chủ được xác định trong tiêu đề phản hồi HTTP Reporting-Endpoints và được chọn bằng chỉ thị CSP report-to. Để biết thêm thông tin, xem CSPViolationReport.

Để biết thêm thông tin, xem hướng dẫn Content Security Policy (CSP) của chúng tôi.

Note: Tiêu đề cũng có thể được sử dụng với chỉ thị report-uri không còn dùng nữa (đang được thay thế bởi report-to). Việc sử dụng và cú pháp báo cáo kết quả hơi khác nhau; xem chủ đề report-uri để biết thêm chi tiết.

Loại tiêu đề Tiêu đề phản hồi
Tiêu đề này không được hỗ trợ bên trong phần tử <meta>.

Cú pháp

http
Content-Security-Policy-Report-Only: <policy-directive>; …; <policy-directive>; report-to <endpoint-name>

Chỉ thị

Tiêu đề Content-Security-Policy-Report-Only hỗ trợ tất cả các chỉ thị Content-Security-Policy ngoại trừ sandbox, bị bỏ qua.

Note: Chỉ thị CSP report-to nên được sử dụng với tiêu đề này hoặc nó sẽ không có hiệu lực.

Ví dụ

Sử dụng Content-Security-Policy-Report-Only để gửi báo cáo CSP

Để sử dụng chỉ thị report-to, trước tiên bạn cần xác định điểm cuối tương ứng bằng cách sử dụng tiêu đề phản hồi Reporting-Endpoints. Trong ví dụ dưới đây, chúng ta định nghĩa một điểm cuối duy nhất có tên csp-endpoint.

http
Reporting-Endpoints: csp-endpoint="https://example.com/csp-reports"

Sau đó chúng ta có thể xác định đích đến của báo cáo bằng cách sử dụng report-toreport-uri, như được hiển thị bên dưới. Lưu ý rằng báo cáo cụ thể này sẽ được kích hoạt nếu trang tải tài nguyên không an toàn, hoặc từ code inline.

http
Content-Security-Policy-Report-Only: default-src https:;
  report-uri /csp-report-url/;
  report-to csp-endpoint;

Note: Chỉ thị report-to được ưu tiên hơn report-uri không còn dùng nữa, nhưng chúng ta khai báo cả hai vì report-to chưa có hỗ trợ đầy đủ trên tất cả trình duyệt.

Thông số kỹ thuật

Thông số kỹ thuật
Content Security Policy Level 3
# cspro-header

Khả năng tương thích trình duyệt

Xem thêm