web-dev-qa-db-ja.com

ローカルコンテンツのみを使用するようにiframeを制限するにはどうすればよいですか?

IFrameを制限して、ローカル(他のWebサイトのコンテンツではない)コンテンツのみを使用するにはどうすればよいですか?私の質問は、他のサイトがiframeで自分のサイトを使用することを制限する方法として 質問 の逆です。

Tomcat/Java/JSPを使用しています。

3
gordon613

child-srcディレクティブで Content-Security-Policy ヘッダーを設定できます。

たとえば、同じドメインのフレームコンテンツのみが許可されます。

Content-Security-Policy: child-src 'self'

'self'の代わりに、特定のオリジンを具体的に指定することもできます。

ここ は簡単なデモです(メタタグはヘッダーのシミュレーションに使用されます)。最初のフレームのみをロードする必要があります。

<meta http-equiv="Content-Security-Policy" content="child-src http://example.com/">
<iframe src="http://example.com/"></iframe>
<iframe src="http://example.org/"></iframe>

これはFirefoxおよびChromeで機能しますが、 IE/Edgeではサポートされていません で機能することに注意してください。

4
Arminius