この問題に興味がありますIFrameはtop.Locationオブジェクト(クロスドメイン)で正確に何ができますか?。
最近クリックジャッキングを防御する方法を見つけたいのですが、この解決策を見つけました。
ただし、このソリューションでは、どのページも私のページをiframeすることを禁止します。私が望むのは、ホワイトリストの一部のサイトが私のページをiframeできるようにすることです。
X-Frame-OptionsのAllow-Fromが私の目標を達成できることは知っていますが、IE6とIE7はこの機能をサポートしていません。
指定されたオリジンによってのみ、ページをフレーム化できるようにすることは可能ですか?
UPDATE @Padrig私の質問に答えてくれてありがとう。現在、あなたの回答にコメントすることはできません。そのため、質問を編集する必要があります。
私はあなたの解決策を試しましたが、うまくいきません。
http://www.b.com/poc/beframed.html
<script>
if (self === top) || (top.location.hostname == 'www.a.com')) {
alert(1);
}
</script>
http://www.a.com/poc/framer.html
<iframe src="http://www.b.com/poc/beframed.html"></iframe>
そして私のホストファイル:
127.0.0.1 www.a.com 127.0.0.1 www.b.com
Chromeブラウザにアラートがありません。