メインコンテンツへ
短.be

X-Frame-Options

Web ページの iframe への埋め込みを制御する HTTP レスポンスヘッダー。クリックジャッキング攻撃の防止に使用される。

2026年9月5日 · 約 1 分で読めます

セキュリティ

X-Frame-Options とは、 Web ページの iframe への埋め込みを制御する HTTP レスポンスヘッダーです。クリックジャッキング攻撃の防止に使用され、ページが意図しないサイトの iframe 内に表示されることを防ぎます。

現行で有効な値は DENY (すべての iframe 埋め込みを禁止) と SAMEORIGIN (同一オリジンからの埋め込みのみ許可) の 2 つです。かつて存在した ALLOW-FROM uri (指定したオリジンからの埋め込みのみ許可) は廃止済みで、 MDN のリファレンス (2026 年 7 月更新版) によれば現行ブラウザはこのディレクティブを含むヘッダー自体を無視します。つまり ALLOW-FROM を指定すると保護そのものが失われるため、特定のオリジンだけを許可したい場合は CSP の frame-ancestors を使います。また、このヘッダーは HTTP レスポンスヘッダーとしてのみ有効で、 meta タグの http-equiv で指定しても効きません。

X-Frame-Options と CSP の frame-ancestors ディレクティブは同じ目的を持ちますが、 CSP の方が新しい仕様であり、複数のオリジンを指定できる柔軟性があります。両方を設定した場合、 CSP の仕様 (Level 2) では frame-ancestors を適用し X-Frame-Options は無視するべきだとしています。新規実装では CSP の frame-ancestors を基本とし、 frame-ancestors を解釈しない古い環境からのアクセスも想定するなら X-Frame-Options (DENY か SAMEORIGIN) を併設します。両方を置く場合は互いに矛盾しない値にしておくと、どちらか一方しか解釈しない環境でも保護が途切れません。

短縮 URL サービスでは、管理画面やプレビューページに X-Frame-Options: DENY を設定し、 iframe への埋め込みを禁止することで、クリックジャッキング攻撃を防止します。リダイレクト用のエンドポイントは iframe 内で使用されるケースがほぼないため、同様に DENY を設定して問題ありません。

X でシェアはてブ

この記事は役に立ちましたか?

関連用語

関連記事

よくある質問

X-Frame-Options の設定値にはどのようなものがありますか?
現行で有効なのは DENY (すべての iframe 埋め込みを禁止) と SAMEORIGIN (同一オリジンからの埋め込みのみ許可) の 2 つです。 ALLOW-FROM は廃止済みで、現行ブラウザではこの値を含むヘッダー自体が無視されるため使いません。
X-Frame-Options と CSP の frame-ancestors の違いは?
frame-ancestors は X-Frame-Options の後継で、より柔軟な制御が可能です。複数のオリジンを指定できる点が優れています。両方設定した場合は CSP が優先されます。

知識を、実際のリンクで。

無料で URL を短縮する