Windows認証を使用するMVC 3を使用してASP.NET 4.0でASP.NETアプリケーションを使用しています。IIS7でのASP.NET認証の問題 - Windows認証でUser.Identity.Nameが空です
Visual Studio 2010から実行すると、すべて正常に動作しますが、IIS7にロールアウトすると、Windowsにログインしたユーザーは決して入力されません(User.Identity.Nameを確認します)。ユーザー資格情報のダイアログプロンプトも表示されません。
のweb.configの設定:(図示されている匿名の禁断の403での結果と無コンテンツを無効にする)匿名であるよう
<authentication mode="Windows" />
がIISで、私は、Windows認証が有効になっていることを見ることができます。
"カーネルモード認証"(useKernelMode = "true")の有効化と無効化の両方を試みましたが、これは違いはありません。認証を正しく動作させるには、別のサーバーの別のサイトでこの設定を無効にする必要があることを覚えていますが、スタックの下に潜在的な問題がある可能性があります。
<security>
<authentication>
<anonymousAuthentication enabled="true" />
<digestAuthentication enabled="false" />
<basicAuthentication enabled="false" />
<windowsAuthentication enabled="true" useKernelMode="false">
<providers>
<clear />
<add value="NTLM" />
</providers>
</windowsAuthentication>
</authentication>
</security>
問題は何ができるか任意のアイデア:
ケースでは、IISのapplicationHost.configのから、便利ですか?
ご意見ありがとうございます。
アップデート1
私は上のテストするために、別のIIS7サーバーを見つけることができたと、私は必要に応じて、すべてが働いていた匿名アクセスを無効にした場合、私が見つかりました。しかし、匿名アクセスを無効にしても、元のIIS7サーバーにはまだ問題があります(今は匿名を無効にしています)。だから私は推測するスタックをさらに下にいくつかの問題がある必要があります。何か案は?私が想像しているように私はそれをポップアップし続けているように修正する必要があります。私はその後、私は、ログインプロンプトダイアログでチャレンジしています問題IIS7ボックスでダイジェスト認証を有効にした場合
アップデート2
、すべてが、私は、適切な資格情報を提供する場合は期待どおりに動作します。しかし、すでにドメインにログインしているユーザーの内部Webアプリケーションであるため、私たちは本当にこのように挑戦したくありません。資格情報は、2番目のIIS7ボックスで動作するように透過的に渡される必要があります。
アップデート3
いくつかの進捗状況...私が見つけたそのWebアプリは、以下の認証を与えるために、直接IIS7のためにapplicationHost.configファイルを編集して、サブサイトのルートにあるとされていない場合設定は期待通りにサイトが動作することができます:認証を設定するには、IIS7のUIを使用して
<authentication>
<anonymousAuthentication enabled="false" />
<windowsAuthentication enabled="true">
<providers>
<clear />
<add value="NTLM" />
</providers>
</windowsAuthentication>
<digestAuthentication enabled="false" />
</authentication>
はかなり右の結果を与えるものではありません。 (IIS7が継承されていると仮定しているように)認証項目が欠落しているか、間違った設定(windowsAuthenticationが正常に機能するためには上記のプロバイダ設定を必要とするようです)。
残念ながら問題のWebアプリケーションは実際には内部バージョン(Windows認証> www.siteを使用しているため)のサブアプリケーションです。com/internal)と外部バージョン(フォーム認証> www.site.com/externalを使用)を使用します。私はまだサブアプリケーションとして動作する認証を得ることができません。私はちょうど "エラーコード:403禁止"を取得します。
これをチェックしてください:http://stackoverflow.com/questions/1067591/user-identity-name-blank-in-asp-net-mvc –
あなたはどのブラウザでテストしていますか?それがFirefoxの場合は、チェックアウトしたいかもしれません:https://addons.mozilla.org/en-US/firefox/addon/integrated-auth-for-firefox/ FirefoxはWindows認証を正しく「有効」にしていませんボックス。 – NotMe
乾杯していますが、何も助けてくれませんでした。この男は、web.configの設定が間違っていたため(VSまたはIISで動作できなくなったため)、Windows認証の取得に問題があるようです。私はVSですべてうまく動作しますが、それは物事が期待どおりに動作していないIISです。 – Gavin