IISでリバースプロキシサーバを構築することになり、色々と検証をしているのですが、IEはマイクロソフトの製品同士で親和性がいいのか、動作検証は問題なく。そして、IISのWIndows統合認証を有効にして、FireFoxで接続しようとすると、うまく接続ができません。
ということで、調べていると、FireFoxでIIS統合Windows認証を利用、有効にするには設定が別途必要ということがわかりました。
そこで、IISでWindows統合認証を有効にする方法を紹介します。ちなみに、Windows統合認証が有効にすると、Windowsドメインにログインした際の資格情報を使ってWEBサーバに接続できるようになるので、シングルサインオンが実現できます。
IISのリバースプロキシに認証を設定することで、ドメインに参加していないユーザーにはアクセスさせないということが可能です。その他、ID/PWを入力しないと接続できないようにすることも可能ですが、今回は統合Windows認証です。
では、設定方法です。
①Firefoxを起動し、アドレスバーに「about:config」と入力し、エンターキーを押します。
②「危険性を承知の上で使用する」をクリックします。
※次回もこの警告を表示するはチェックのままでもかまいません。
③するとずらーッと項目が出てくるので、検索フォームに「network.negotiate-auth.trusted-uris」と入力しエンターキーを押下します。
③下の画面に表示された「network.negotiate-auth.trusted-uris」をダブルクリックします。
④統合Windows認証プロバイダのURLを入力し、「OK」をクリックします。
例:mydomain.com、https://myotherdomain.com
⑤検索フォームに「network.negotiate-auth.delegation-uris」と入力し、下に表示された「network.negotiate-auth.delegation-uris」をダブルクリックします。
⑥統合Windows認証プロバイダのURLを入力し、「OK」をクリックします。
例:mydomain.com、https://myotherdomain.com
⑦検索フォームに「network.automatic-ntlm-auth.trusted-uris」と入力し、下に表示された「network.automatic-ntlm-auth.trusted-uris」をダブルクリックします。
⑦Firefoxを再起動します。
まとめると、以下の項目を設定します。
「network.negotiate-auth.delegation-uris」
「network.negotiate-auth.trusted-uris」
「network.automatic-ntlm-auth.trusted-uris」
参考情報
https://developer.mozilla.org/en-US/docs/Mozilla/Integrated_authentication
「network.automatic-ntlm-auth.trusted-uris」はNTLM認証なので、ケルベロス認証の場合は、不要です。
そして、以下もある通り、
mydomain.com上記のNTLMおよびSPNEGO認証の設定で、フォームの完全修飾されていないエントリを使用する場合は、設定network.automatic-ntlm-auth.allow-non-fqdnとnetwork.negotiate-auth.allow-non-fqdn(それぞれ)をに設定する必要もありますtrue。
フォームの完全修飾されていないエントリを使用する場合は、以下も必要になります。
network.negotiate-auth.trusted-uris
network.negotiate-auth.allow-non-fqdn