IIS7.0Windows認証の再認証について

このQ&Aのポイント
  • WindowsServer2008 + IIS7.0でWebサーバーを稼動させ、セキュリティをかけたいページが存在するため、Windows認証を設定いたしました。
  • WindowsServer2003アクティブディレクトリにて、各端末が認証を受けログオンしております。
  • ID/パスワードを聞かれること無く閲覧でき、また閲覧不可としたい別ユーザーのログオンではID/パスワードを聞かれた状態となりました。
回答を見る
  • ベストアンサー

IIS7.0Windows認証の再認証について

現在WindowsServer2003アクティブディレクトリにて、各端末が認証を受けログオンしております。このたびWindowsServer2008 + IIS7.0でWebサーバーを稼動させ、セキュリティをかけたいページが存在するため、Windows認証を設定いたしました。 IISマネージャで設定した内容は、「認証」項目で、「匿名認証」のみが有効になっていたので、それを無効として「Windows認証」を有効にしました。 その後セキュリティが必要なHTMLファイルに対してのみ、右クリック-プロパティ-セキュリティの項目にて、UsersやAuthenticatedUsers等を削除して、閲覧可能としたいドメインユーザーを追加しました。 端末から接続テストをしたところ、該当のドメインユーザーでログオンした状態で、ID/パスワードを聞かれること無く閲覧でき、また閲覧不可としたい別ユーザーのログオンではID/パスワードを聞かれた状態となりました。 一度このID/パスワードを聞かれた状態で、認証可能なID/パスワードを入力し閲覧しました。 ここまでは良かったのですが、翌日等この閲覧不可としたユーザーでログオンし、このページにアクセスしたところID/パスワードを聞かれずに閲覧できてしまいました。 おそらく前日にこのユーザーで入って閲覧した際に適切なID/パスワードを入力して閲覧したため、「認証OK」の状態が記録されているのだと思います。InternetExplorerでの「パスワードを保存する」のチェックは入れておりませんので、IIS側でのWindows認証記録がどこかに保持されていると想像しております。 例えばインターネット上のID/パスワード認証ですと、セッション切断により再認証が必要となったりすると思うのですが、同様に再認証のタイミングを設定する方法はありますか。 例えば端末で一度ログオフして再ログインにより、再度認証が行われるようになるとかで十分なのですが、現在は翌日になっても一度通った認証がそのまま使われているようですので困っております。 以上、あまり詳しくなく説明も不十分だったり、的外れだったりするかもしれませんが、よろしくお願いいたします。

質問者が選んだベストアンサー

  • ベストアンサー
  • maesen
  • ベストアンサー率81% (646/790)
回答No.2

ページ遷移などがちょっとわからないので何ともいえないのですが、 認証が必要なWebサイトにアクセスした場合、ブラウザはAuthorizationヘッダにて認証情報を載せてリクエストを出します。 認証が成功した場合、そのWebサイトにアクセスする場合にはリクエストには全て認証が成功した情報のAuthorizationヘッダが付くことになります。 つまり、 >ID/パスワード入力画面が表示され、そこで入力したDomain\USER2としてAAA.htmを開いたログがありましたが ここで認証が成功しているので、これ以降はリクエストにはDomain\USER2の認証情報のAuthorizationヘッダが付くことになります。 これはブラウザのメモリ上に保持されるので全てのブラウザを閉じなければずっとこの動作が続くことになります。 基本的な動作はこんな感じになると思いますが、この辺のhttpの認証関連の動きが関連している可能性はあったりしませんでしょうか。

luckstock
質問者

お礼

ご回答ありがとうございます。Authorizationヘッダの件、とても勉強になりました。今回私の環境での動きを考えますと、ブラウザを閉じるどころかパソコンの再起動までしてもこの認証情報が残っていることになってしまうので、Authorizationが残ってしまう問題がないか等で調べた結果下記ページにたどり着きました。 認証ページの振る舞い http://social.technet.microsoft.com/Forums/ja-JP/internetexplorerja/thread/f8fd7df6-ef20-4531-94ed-eb2fffdbc41d/ 試しに私の環境でもIE8で試したところ、ブラウザを閉じるたびにID/パスワードが表示されました。私もOSやブラウザの違うほかの環境で試すべきでした。まだサーバー側には手を付けておりませんが、キャッシュを保持させない内容をサーバー側やHTMLファイル内で対応すれば今回の問題はIE9でも解消できそうです。 いろいろ教えていただきありがとうございました。

その他の回答 (1)

  • maesen
  • ベストアンサー率81% (646/790)
回答No.1

>おそらく前日にこのユーザーで入って閲覧した際に適切なID/パスワードを入力して閲覧したため、「認証OK」の状態が記録されているのだと思います。InternetExplorerでの「パスワードを保存する」のチェックは入れておりませんので、IIS側でのWindows認証記録がどこかに保持されていると想像しております。 さすがにIIS側に認証情報が保持されるということは無いと思いますけどね。 もう少し状況を確認するために、 (1)資格情報マネージャにて、認証情報が記録されていないか。 http://www.atmarkit.co.jp/fwin2k/win2ktips/1240bkucrd/bkucrd.html (2)IISのログで、問題となる事象を実施したときにどの資格情報(ユーザー/パスワード)で認証がOKとなったか この辺を確認しては如何でしょうか。 既に実施済みならばご了承下さい。

luckstock
質問者

お礼

ご回答ありがとうございます。 まず端末側のユーザーでログインし、資格情報マネージャにて認証記録を確認いたしましたが、資格情報はありませんでした。 またIISログを確認し、認証時の部分は以下のようになっておりました。 ------------------------------------------------------------- 2013-03-29 03:42:08 192.168.8.1 GET AAA.htm - 80 Domain\User1 192.168.8.100 Mozilla/5.0+(Windows+NT+6.1)+AppleWebKit/537.22+(KHTML,+like+Gecko)+Chrome/25.0.1364.172+Safari/537.22 401 3 5 0 2013-03-29 03:42:13 192.168.8.1 GET AAA.htm - 80 Domain\User2 192.168.8.100 Mozilla/5.0+(Windows+NT+6.1)+AppleWebKit/537.22+(KHTML,+like+Gecko)+Chrome/25.0.1364.172+Safari/537.22 200 0 0 31 ↓ この後何らかのJavaアプリ?が動作したログがありました。仮にアプリにより開いたページをBBBとします。正確にはアドレス表示では「AAA.htm」が開いているのですが、ページ内部の表示はBBBによって表示されているようです。 ------------------------------------------------------------- ログを見ていてこのページの動作について気づいたのですが、初回に開くAAA.htmからBBBが自動的に動作する仕組みになっているようで、上記のように1度目はDomain\USER1に権限はないため、ID/パスワード入力画面が表示され、そこで入力したDomain\USER2としてAAA.htmを開いたログがありましたが、2度目にこのAAA.htmを開いた際には質問の通りID/パスワードは要求されず、その時のログはAAA.htmは載っておらず、いきなりBBBが動作しているログとなっておりました。 本来ならばBBBの動きも含め考えなければならないことはわかっているのですが、現在の私のスキル的に敷居が高く、当然BBBへリダイレクトするしくみのせいでこのような状況になっているのかもしれないと思いますが、入り口として必ずAAA.htmから開くようにはなっている為、なんとかBBBに手を入れずにAAA.htmへの認証が使えないかと思っております。 また、IISのログについてもそこまで詳しくないので「なんとなく」でしか見れておりませんので、もう少しじっくりと見てみます。 ページがリダイレクトする内容について情報が後出しとなってしまい申し訳ありませんでした。 しかし教えていただいた調査項目で少しわかってきました。ありがとうございました。 またこれらの情報で他に試せること、調査する項目が何かありましたらまた教えていただけると助かります。よろしくお願いいたします。

関連するQ&A

  • windows2000のIISの認証設定について

    windows2000でIISの認証設定の、匿名アクセス認証のチェックを外すと、ユーザー名とパスワードを聞いてくるのですが ユーザー名とパスワードに何を入れたら良いか教えてください。 認証の設定はIISの既定Webサイトのフォルダーに、プロパティ設定で、 ディレクトリセキリュティの匿名アクセス及び認証コトロールの編集の設定で、 匿名アクセスのチェックを外しています。 チェックを入れた状態のユーザー名は、IUSR_PCS17694でパスワード**********で ISによるパスワードの管理を許可するの所にチェックが入っています。

  • IIS7.0+統合windows認証

    初投稿です★ 二年目SEのERIといいます。 IIS7.0で統合windows認証(2008 server)を実現し、Webdavでファイル共有の仕組みを構築することを目標としています(ADでドメイン構築済み) 下記の手順をイメージしていますが、漏れとか間違いとかあったら、コメントください。 (1)IIS7.0をインストールし、仮想ディレクトリ作成等の設定 (2)Webdavモジュールのインストール(iis7.0にはデフォルトでないため) (3)AD上にユーザアカウントを作成 (4)統合windows認証の設定 (5)クライアントのドメインユーザ追加設定 (6)ドメインユーザでwebサーバへアクセス 質問 ・(2)ですが、インストール後に何か設定はいるのでしょうか?? ・(3)ですが、AD上ではなく、ローカルアカウントでも統合windows認証は実現できるのでしょうか?? ・(4)ですが、iis7.0はデフォルトで匿名認証しかないですが、どのように設定をすればよいでしょうか?? 知っている方がいましたら、コメント頂けると幸いです♪

  • IIS でのユーザー認証について あれっ?

    LANで内部に Webページを公開したいと思います。 IIS でユーザー認証をさせたいので、 「インターネットサービスマネージャ」を使って、 しかるべき設定を行い、そのページに対し、特定ユーザー のみアクセス権を与えました。 その後、対象となるページを読み込むと、ユーザー認証の ダイアログが出てきて、ユーザー名、パスワードの入力が 求められます。 ここまではいいのです!! さらに、その下に、ドメイン名の入力を求められます。 これは何とかならんか(省略できないか)、と私に詰め 寄られて、困っています。 ユーザー名と、パスワード入力でシンプルに収めること はできないのでしょうか。 他所のサーバーでそのようなダイアログを見たことがある のですが・・・

  • IISの認証

    Windows2000+IISの環境のWEBServerにアクセスすると、”このページを表示する権限がありません”HTTP 401.1-権限がありません:ログオンに失敗しました。でエラーとなります。 IISのディレクトリセキュリ→匿名アクセスと認証コントロール→統合Windows認証のチェックの有無にかかわらず、PROXY経由のインターネット環境であると上記エラーとなります。PROXYを通さないと問題はありません。PROXY経由でも正常にアクセスできるようにするには、IISにどのような設定を行えばよいのでしょうか?

  • イントラネットHPに設置したパスワードが上手くログオンしない

    NT4.0 SP6でイントラネットHPを作成し、 ユーザー認証をドメインユーザーマネージャーで設定しIISでセキュリティを組みユーザー名、パスワード、ドメインを入れアクセスできる様に設定したのですが、通常だと "ネットワークパスワード入力"のウィンドウで「ユーザー名」「パスワード」「ドメイン」と3つの項目が表示されるのですが、一部の端末が「ユーザー名」「パスワード」の2つの項目しか表示されません。 この一部の端末は一体何の設定をすれば3つの項目を表示されるようになるのですか?教えて下さい

  • Window2003Server IIS6.0

    Windows2003ServerでWebシステムを開発しています。 過去の色々な質問を参考にさせて頂いて 試してきましたが1つだけ解決できないところがありましたので 投稿させて頂きます。 IISの仮想ディレクトリに設定しているページを クライアントからURLで指定した時に ユーザ認証的なもの(ユーザーID、パスワード、ドメイン)が 必ず聞かれてしまいます。 一回入力するとそのブラウザでは問題なく使えますが 別の新しいウインドウで開くと、また聞かれてしまいます。 これをなくしたいのですが・・・どうか教えて下さい。

  • IISでのBasic認証で

    現在IISを使用したbasic認証を設定しているのですが、 ・basic認証用のユーザをOSに追加 ・IISマネージャのディレクトリセキュリティで基本認証を選択 ・対象フォルダのセキュリティにユーザを追加 の3つの設定をしました。 そして、リモートからwebページを表示させようとしたところ、サーバへのログイン時にアドミンアカウントの認証画面が出てきたので、匿名ログインの許可をしたところ、配下のwebページすべてが許可されてしまい、basic認証ができません。 解決方法をご存知の方がおられましたら、ご教授下さい。 よろしくお願いします。

  • windows統合認証とform認証の併用

    こんばんは。 現在windows server 2008 R2 SE上で動作する.netのアプリを開発中です。  ※windows server 2003環境からwindows server 2008環境に移行。アプリも改修 お客様の要件として、下記の内容があります。 ------------------------------------------------------- (1)ドメインユーザがアクセスしてきた場合はwindows統合認証でシームレスにログインさせる。 (2)ドメイン外ユーザ(ローカルPCにログインしているユーザ)がアクセスしてきた場合は   windows統合認証失敗時に表示される認証ダイアログを表示せずに、別に準備したログイン   画面を表示し、そこにユーザID/パスワードを入力してログインさせる。 ------------------------------------------------------- windows統合認証に失敗した場合必ず認証ダイアログが表示されてしまうので(2)は無理なのでは とも思ったのですが、客先の現行アプリでは確かに実現されています。 web.configの設定等で何とかなるものなのでしょうか? もしくは、イレギュラーな対処法でもよいのでアイデアをいただけると幸いです。 ちなみにIISの  windows統合認証 ON  匿名認証 ON の状態で、User.Identity.Nameを取得し、  値が入っていればドメインユーザ  値が空文字であればろーかるPCユーザ と判断しようと考ええたのですが、匿名認証がONの場合はUser.Identity.Nameが空になるようで、、 よろしくお願いします。

  • Windows2003 IIS設定 Perl 認証

    Windows2003にActivePerlをインストールして、動作するところまでは確認できたのですが、 そのPerlプログラムを実行すると、ユーザ認証ウィンドが表示されます。 認証なしにするには、IISのどの部分を設定すればよろしいでしょうか? よろしくお願いいたします。

  • IISの認証(セキリュティ)について

    IIS認証の設定(セキリュティ)について教えて下さい。 現在Windows2000serverにIISの認証を設定しています。 設定内容 社内用セキリュティ      (1)IIS既定WebサイトのScripts/cb4のプロパティで「ディレクトリセキリュティ」ー       「匿名アクセスおよび認証コントロール」-「編集(E)」「基本認証」にチェック       を入れている。クライアントパソコンから、http://サーバー名/scripts/cb4/office.exeを起動すると       パスワードの入力画面が表示される。      外部(社外用)セキリュティ      (2)IIS既定WebサイトのScripts/cb4のプロパティで「ディレクトリセキリュティ」ー「IPアドレスとドメイン名の制限」       -「編集(E)」「拒否する」にチェックを入れて、許可したい人のIPアドレスを入れている。 上記の設定の場合は、社内で運用する場合はよいのですが、 社外(外部)から http://サーバー名/scripts/cb4/office.exeにアクセスした時に、決められた人だけアクセス した時に、パスワードの入力画面を表示させないで入る方法はできないのでしょうか。 IIS認証の設定(セキリュティ)で出来る方法があれば教えてください。 出来なければ、ほかの方法で(例えばCGI、Jaba他)出来る方法を教えてください。