繁体   English   中英

用Javascript捕获Content-Security-Policy异常

[英]Catching Content-Security-Policy exceptions with Javascript

我们已经在huuuge单页Web应用程序中实现了CSP。 我们会时不时地出现错误,某些错误是由于用户表单输入处理不当造成的,而某些错误似乎是由用户的浏览器引起的。

当CSP异常发生时,是否可以在客户端收集更多数据? 服务器端报告缺少重要数据。 我们知道源URL,被阻止的URL,违反规则/指令...,但这无济于事,因为我们不知道当前屏幕上的内容以及用户浏览器是否应归咎于此。

我们需要知道

  • 当时正在查看什么javscript模块/ JS层是什么/详细信息
  • 请求该资源的原始源/触发源在哪里 -是我们的错误是显示某些机器人注入的未经清理的嵌入表单的HTML,还是用户感染了这些恶意软件链接的浏览器?

是否有一些类似window.onCSPException = func的钩子可以挂接并运行客户端分析? 我们需要快速将我们的问题与客户端浏览器的问题区分开。

https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CSP#Enabling_reporting

默认情况下,不发送违规报告。 要启用违规报告,您需要指定report-uri策略指令,至少提供一个将报告发送到的URI:

Content-Security-Policy: default-src 'self'; report-uri http://reportcollector.example.com/collector.cgi

然后,您需要设置服务器以接收报告。 它可以按照您认为合适的方式存储或处理它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM