none
サーバー証明書で割り当てた URL にアクセスし、Windows 認証でログインしようとするとステータス 401 が返る RRS feed

  • 質問

  • いつもお世話になっております、おのでらです。たびたびの投稿ですみません。

    ※現在現象を確認できる環境にいないので一部あやふやな記述をしているかもしれませんがご了承ください。

    【環境】

    • Windows Server 2008 R2 Standard (SP なし)
    • ワークグループ
    • 正規サーバー証明書バインド
    • SSL 必須
    • イントラネット
    • Web システム:ASP.NET MVC 3 イントラネットアプリケーション (Windows 認証必須)
              SQL Server Reporting Services (SQL Server 2008 R2)
    • Web アプリケーション配置場所:Default Web Site/<アプリ名A>
    • Web システムアクセス核にブラウザ:IE 9 (自分自身のサーバー内で確認)
    • クライアント証明書なし

    【現象】

     イントラネット内の Web サーバーに対して SSL 通信(https)を行うために IIS にサーバー証明書を登録して Default Web Site に https (443) でバインドしました。Default Web Site の直下に Windows 認証必須、SSL 必須の ASP.NET MVC アプリケーションを作成して配置したのですが、証明書指定の URL でアクセスし、認証画面が表示されるところまでは確認したのですが、ログインしようとしても認証が通らなくステータス 401 が返ってきます。

     ちなみに Windows 認証が必要でないアプリケーションでは正常に Web 画面が表示されます。また、自己証明書で登録した場合は Windows 認証必須でもログイン後正常に Web 画面が表示されます。アカウントは administrators 権限のユーザーです。

     上記のように Windows 認証が必要ない Web アプリケーションが動作することを考えるとサーバー証明書の設定が間違っているようには思えないので認証あたりに何かあるのだと思います。

     また、SQL Server Reporting Services も配置しているのですが、やはり Web アプリケーションと同様の条件で認証が通りません。

     動作結果を一覧でまとめると以下のようになります。

    Windows 認証なしアプリ Windows 認証必須アプリ
    自己証明書 (https://<サーバー名>/<アプリ名A>)
    正規サーバー証明書 (https://<ホスト名>/<アプリ名A>) ×(401)

     サーバー証明書と Windows 認証を組み合わせた場合に認証が成功しない理由がよくわかっておりません。何かわかる方情報お待ちしております。


    おのでら (http://sorceryforce.com/)


    2012年2月11日 3:03

回答

  • > •Web システムアクセス核にブラウザ:IE 9 (自分自身のサーバー内で確認)

    「自分自身のサーバー内で確認」ということから、以下のページに書いてある
    問題ではないでしょうか?


    IIS 5.1 または以降のバージョンでホストされ、統合認証を使用する Web
    サイトを参照するとエラー 401.1 が表示される
    http://support.microsoft.com/kb/896861/ja

    サーバでなく、クライアントコンピュータから試してみてください。

    2012年2月11日 4:09

すべての返信

  • > •Web システムアクセス核にブラウザ:IE 9 (自分自身のサーバー内で確認)

    「自分自身のサーバー内で確認」ということから、以下のページに書いてある
    問題ではないでしょうか?


    IIS 5.1 または以降のバージョンでホストされ、統合認証を使用する Web
    サイトを参照するとエラー 401.1 が表示される
    http://support.microsoft.com/kb/896861/ja

    サーバでなく、クライアントコンピュータから試してみてください。

    2012年2月11日 4:09
  • SurferOnWww さん回答ありがとうございます。

    なるほど、反射攻撃を防ぐために自分自身のサーバー内からは完全修飾ドメイン名でアクセスできない仕様になってるんですね。現在私が設定している環境は特殊な経路でサーバーにしかアクセスできない環境なので、別なクライアント環境からのアクセス確認をお願いしてみたいと思います。

    >「自分自身のサーバー内で確認」ということから、以下のページに書いてある問題ではないでしょうか?

    以前どこかで自分自身にアクセスできないという情報を見かけたことがあったのですが(リモートデスクトップだったかな?)、もしかしたら同じ現象がありうるのかなーと思い追記していました。やはり完全修飾ドメイン名だとだめなパターンがいくつかあるみたいですね。


    おのでら (http://sorceryforce.com/)

    2012年2月11日 5:29
  •  サーバー自身以外のマシンからアクセスしたところ SSL(https) で正常に接続できることを確認できました。

     また、レジストリの設定を変更することにより自分自身のサイトにもアクセスできることを確認いたしました。

     SurferOnWww さんありがとうございました。


    おのでら (http://sorceryforce.com/)

    2012年2月15日 7:16