我试图通过Content-Security-Policy
在节点层的响应标题中设置它来禁用我网站上的所有 iframe。根据Mozilla Developer Network,从客户端的角度来看,该属性应如下所示:
Content-Security-Policy: frame-ancestors 'none';
没关系,这就是我在中间件的 Node 层中设置它的方式:
app.use(function (req, res, next) {
/* Clickjacking prevention */
res.header('Content-Security-Policy', "frame-ancestors 'none'")
next()
})
这是我检查网络活动时它在客户端的显示方式:
但是,当我嵌入 YouTube iframe 时,如下所示:
<iframe
width="420"
height="345"
src="https://www.youtube.com/embed/tgbNymZ7vqY"/>
它没有被禁用。为什么框架祖先策略似乎没有效果?在 Chrome 上测试它的价值。