【发布时间】:2020-08-15 08:55:32
【问题描述】:
我对内容安全策略有点怀疑...我的渲染文件 pug 包含像 onclick='someFunction()' 这样的内联事件处理程序...在我安装了用于添加额外标头的头盔后,它阻止了我的内联事件处理程序以违反 csp。 .经过一些研究后,我知道要允许内联脚本,我们必须使用不安全内联、随机数或哈希..所以我将随机数放在 pug 文件中的脚本标签中,如script(src="source", nonce='123456') 并在头盔中间件中设置内容-security-policies script-src to 'nonce-123456'..但我仍然无法执行内联事件处理程序..我的问题是使用 nonce 或 sha-256 只允许像<script nonce='123456'> someFunction() </script> 这样的 linline 脚本工作,否则它将允许两者要执行的内联脚本和内联事件处理程序??..我知道我可以使用 addEventListener() 来代替内联事件处理程序..但是有什么方法可以使用内联事件处理程序??
【问题讨论】:
标签: express content-security-policy helmet.js