ADFS 3 の x-frame-options HTTP ヘッダーをどのように操作できますか?

ADFS 3 の x-frame-options HTTP ヘッダーをどのように操作できますか?

デフォルトでは、ADFS 3 応答には「X-Frame-Options: DENY」HTTP ヘッダーが含まれます。これにより、クリックジャッキング攻撃の機会が生じるため、ADFS が iframe 内で実行されるのを防ぎます。

しかし、現在、私の会社では、このセキュリティルールに例外を設ける統合を実装しています。特定のドメインのページすべきiframe に ADFS を埋め込むことができるようになります。

ただし、ADFS ではこれをそのまま変更することはできないようです。では、この HTTP ヘッダーを変更する最適な方法は何でしょうか?

例えば、RFCで提案されているように(https://www.rfc-editor.org/rfc/rfc7034#section-2.3.2.3)?

  1. 要求されたコンテンツをフレーム内にレンダリングするページは、クエリ文字列パラメータを介してフレーム化するコンテンツを提供するサーバーに独自のオリジン情報を提供します。

  2. サーバーは、ホスト名が基準を満たしているかどうかを確認し、ページがターゲット リソースによってフレーム化されることを許可します。これは、たとえば、ページをフレーム化することが許可されている信頼されたドメイン名のホワイトリストを検索することによって行われます。たとえば、Facebook の「いいね」ボタンの場合、サーバーは、指定されたホスト名がその「いいね」ボタンに期待されるホスト名と一致するかどうかを確認できます。

  3. ステップ 2 で適切な基準が満たされた場合、サーバーは「X-Frame-Options: ALLOW-FROM」でホスト名を返します。

  4. ブラウザは「X-Frame-Options: ALLOW-FROM」ヘッダーを強制します。

答え1

ADFS 3の前にWebサーバーをリバースプロキシとして使用し、HTTPヘッダーを変更します。これは次のように実行できます。アパッチまたはエンギンクスADFS 3はプロキシを好まないかもしれないので、これを配信する前に徹底的にテストしてください。概念実証を提供する方法はありません。

管理するサーバーとサービスが1つ増えますが、これは必須要件だと理解しています。会わなければいけない

答え2

Set-AdfsResponseHeaders コマンドレットが Microsoft によって追加されました:

https://docs.microsoft.com/en-us/windows-server/identity/ad-fs/operations/customize-http-security-headers-ad-fs

関連情報