我注意到至少有一个网站在iframe中包含我的网站,我很好奇不允许这类行为的最佳方法。
我已经包含了一些Javascript,如果网站正在构建我的网站,那么应该能够接收这些Javascript,这样我就可以生成一个我想阻止的网站列表。但是,有些网站我不想禁止iframing。
是否可以通过IIS(7)查看站点列表,如果请求来自该列表中的站点,以某种方式失败或阻止请求?
谢谢!
答案 0 :(得分:1)
使用X-Frame-Options: deny
HTTP标头阻止任何人<iframe>
访问您的网站。如果您希望能够<iframe>
您自己的网站,但阻止他人这样做,请使用
X-Frame-Options: sameorigin
。
More reading on X-Frame-Options
over at MDN.
附注:黑名单通常不起安全作用。 白名单是正确的方法。
Allow-From只允许一个URI,这意味着如果我使用Facebook URI它会杀死我的图像上传器,如果我使用Sameorigin图像上传器(以及任何我自己的iframe)都可以使用,但是它会杀死Facebook。你知道是否有任何类型的Allow-From和Sameorigin的组合,以便它们都被强制执行?
This is not possible given the current spec.但是,您可以使用2个不同的网址来投放相同的内容:一个用于Facebook中的iframing(发送allow-from
),另一个用于您自己的iframe(发送sameorigin
) 。不是很好,但总比没有好。