web-dev-qa-db-ja.com

IISリバースプロキシの認証を有効にする

リバースプロキシ設定をApacheからIISに移動しています。これらのサイトのいくつかは、先に進む前にプロキシで認証する必要があります。これらは、簡単にするために別のIISサイトにあります。このサイトおよび/またはその中で構成したリバースプロキシを特定のADグループで使用できるように指定するにはどうすればよいですか?

私が試したこと:

以下は、IISでWindows認証のみを有効にして実行されます。すべてServer2016/IIS 10です。

  1. リバースプロキシサイトをホストしているフォルダのNTFSアクセス許可をdomain\desiredgroupグループとproxy\iis_iusrsグループのみに設定しましたが、これは役に立ちませんでした。それでもdomain\domain usersの通過は許可されます。

  2. domain\desiredgroupがアクセスでき、domain\domain usersが拒否された状態で認証ルールを編集します。これはすべての人をブロックします。

2
Tim Brigham

IISでネイティブにサポートされていないようです。

0
Tim Brigham

これを行うためのより受け入れられている方法は、 Application Request Routing(ARR) -を使用することですが、これには追加のAD FS(Active Directoryフェデレーションサービス)サーバーをセットアップする必要があります。

私は最近、Kibanaのインスタンスについてあなたと同じことをしたいと思っていましたが、たまたまこのヘルプブログを見つけました: https://www.smbadmin.com/2017/07/securing-kibana-with-iis- reverse-proxy.html

リンクはスタック上で良い答えとは見なされないので、要約します。

  1. IIS Webサーバーの役割とURL承認、Windows認証、および管理ツールをインストールします。
  2. IISリバースプロキシをURL書き換えモジュールで構成します。これには、バックエンドのWebサイト/ Webアプリの性質によっては、いじくり回す必要があり、場合によっては完全に失敗する可能性があります(詳細それについては後で)。
  3. SSLのセットアップ(オプション)-プロキシはhttps経由で着信するトラフィックを受け入れます-プライベート接続であるため、バックエンドはhttpを使用できます。 SSLが有効になっていないサイト/アプリを保護するための良い方法。
  4. 認証のセットアップ-IIS Webサイトの認証モジュールを使用して、匿名を無効にし、優先方法(私の場合は「Windows認証」)を有効にします。
  5. 承認ルールの設定-すべてのデフォルトの許可ルールを削除し、アクセス権を持つ必要があるADユーザーまたはグループの許可ルールを追加します。

それで、これは私のKibanaのインストールにうまく機能したので、Jenkinsや他の多くのWebサイトやWebアプリケーションにデプロイすることにしましたが、いくつかの調整を加えて最もうまくいきました。

ただし、警告-これを試した一部のサイトでは、取得できませんでした-たとえば、Confluenceでは、ページが更新されるたびに認証ポップアップが表示され続けます。クローズドソースである別のあいまいなカスタムWebアプリは、500と不正なリダイレクトを継続的に引き起こす可能性のあるいくつかの貧弱なWeb開発慣行を使用していました。

将来、ARRを設定して、これらの場合にうまく機能するかどうかを確認する可能性がありますが、ARRは元の質問の範囲外です。

1
tremor