是否可以通过外部脚本覆盖/删除页面内容安全策略?

时间:2018-12-19 07:10:03

标签: javascript html security http-headers content-security-policy

我正在为单个网页编写一个外部脚本,我需要通过此脚本向另一个资源发出一个POST JSON请求。

但是,当我这样做时,它会引发CSP错误:"Refused to connect to <URL> because it violates the following Content Security Policy directive: "connect-src 'self'"

我浏览了网页,看到了包含带有CSP内容的Content-Security-Policy的元标记。但是,我尝试将<URL>手动添加到CSP connect-src内容中,但是仍然无法正常工作。

问题:

  • 我可以通过外部脚本更改CSP吗?怎么样?
  • 也许对此有任何解决方法?

1 个答案:

答案 0 :(得分:0)

错误消息是说需要更改的设置:

  

它违反了以下Content Security Policy directive: "connect-src 'self'"

因此,您需要将'connect-src'指令设置为'self'以外的其他参数,而这可能是默认设置。

您说过,您尝试添加要连接的URL。那不是很正确-您只需要添加主机部分,而不是任何路径。

因此CSP标头的connect-src部分应类似于:

connect-src 'self' https://*.example.com

如果使用尝试的方法更新问题,但仍然无法解决问题,则可以诊断出确切的错误。