LoginSignup
17
31

More than 3 years have passed since last update.

【Windows】社内WebシステムをAD連携してシングルサインオンにする(統合Windows認証)

Last updated at Posted at 2019-09-09

Active Directory + IIS で、社内(イントラネット)Webサイトをシングルサインオンにできる。

統合Windows認証を使える条件

よくあるご質問:統合Windows認証の設定方法を教えてください。│グループウェア desknet's NEO

※ある製品のサポートページだが、統合Windows認証が使える条件が詳しく書かれている。

サーバー側

  • Windows Server および IISを使用する。
  • Active Directoryドメインに参加している。

クライアント側

  • PCがActive Directoryドメインに参加していて、ログオンユーザーもドメインユーザーである。
  • インターネットオプションで、サーバーをイントラネットもしくは信頼済みサイトと認識している。

イントラネットサイトの判別

統合Windows認証が通るかどうかは、接続先がイントラネット内にあるかどうかで決まり、その判断はクライアントのブラウザによって行われる。

IE のセキュリティ ゾーンについて – Japan IE Support Team Blog

端的にいうと、Webサイトのページのプロパティを見て「ゾーン」が「ローカルイントラネット」になっていれば良い。

ローカルサイトかどうかは、設定は色々あるが、まずURLで判定されている。URLにドットが含まれていない場合は、ローカルサイトとみなされる。

つまり、以下のような感じ:

  • http://server/ → ローカルサイト
  • http://192.168.1.1/ → インターネットサイト
  • http://server.co.jp/ → インターネットサイト

その他、プロキシ除外に指定したサイトはローカルイントラサイトとみなしたりする。

参考:
IE 限定じゃない統合Windows認証-Chrome / Edge / Firefox でも! | 鉄飛テクノロジー

統合Windows認証を使う

ASP.NET で Windows 認証および Windows 承認を実装する方法

IIS の設定補足

上記サイトを見れば大体は分かるが、IIS設定部分が分かりづらかったので画像を載せた。

IISマネージャーを開き、対象のWebサイト → 認証 を押す。

「Windows認証」のみ有効にする。

これを調べたきっかけ

社内のあるWebシステムで統合Windows認証を利用していたが、プロキシサーバーの利用をやめた途端、認証を求めるダイアログが表示されるようになった。
私の入社前から稼働していたシステム&外部ベンダー製ということもあり、何も知らないので少し調べてみた記録がこの記事。

プロキシサーバー利用時に何故統合Windows認証が有効だったかというと、「インターネットオプションのセキュリティ設定で、プロキシサーバーを使用しないサイトをイントラネットに含める設定になっていて、かつ、プロキシ例外に192.168.*が入っていたから、イントラネットと判定された」ことが理由っぽい。

件の社内システムのURLはIPアドレスだったので、これを試しにサーバー名(ドット無し)に変えてみたところ、イントラネットサイトと認識され、認証がすんなり通った。
対応方法としては、インターネットオプションを変更し、IPアドレスをイントラネットサイトに含めるのも良いと思う。

17
31
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
31