我注意到至少有一个网站将我的网站包含在 iframe 中,我很好奇禁止这种行为的最佳方法。
我已经包含了一些 Javascript,如果一个网站正在构建我的框架,它们应该能够获取,这样我就可以生成一个我想要阻止的网站列表。但是,有些网站我不想禁止 iframe。
是否有可能通过 IIS (7) 查看站点列表,如果请求来自该列表中的站点,则以某种方式失败或阻止请求?
谢谢!
我注意到至少有一个网站将我的网站包含在 iframe 中,我很好奇禁止这种行为的最佳方法。
我已经包含了一些 Javascript,如果一个网站正在构建我的框架,它们应该能够获取,这样我就可以生成一个我想要阻止的网站列表。但是,有些网站我不想禁止 iframe。
是否有可能通过 IIS (7) 查看站点列表,如果请求来自该列表中的站点,则以某种方式失败或阻止请求?
谢谢!
使用X-Frame-Options: deny
HTTP 标头来防止任何人<iframe>
访问您的站点。如果您希望能够访问<iframe>
自己的站点但阻止其他人这样做,只需使用
X-Frame-Options: sameorigin
.
旁注:黑名单通常不适用于安全性。白名单是正确的方法。
Allow-From 将只允许单个 URI,这意味着如果我使用 Facebook URI,它将杀死我的图像上传器,如果我使用 Sameorigin,图像上传器(以及我自己的任何 iframe)将起作用,但它会杀死Facebook。你知道是否有任何类型的 Allow-From 和 Sameorigin 组合,以便它们都被强制执行?
鉴于当前的规范,这是不可能的。但是,您可以使用 2 个不同的 URL 来提供相同的内容:一个用于 Facebookallow-from
中的 iframe(发送),一个用于您自己的 iframe(发送sameorigin
)。不是很好,但总比没有好。