もともとVS2010で開発されたMVC3イントラネットアプリケーションがあります。VS2012を実行している新しいマシンでそれを開こうとしましたが、次のようになりました。
エラーメッセージ401.2: Unauthorized:サーバー構成が原因でログオンに失敗しました。指定した資格情報とWebサーバーで有効になっている認証方法に基づいて、このディレクトリまたはページを表示する権限があることを確認してください。さらに支援が必要な場合は、Webサーバーの管理者に連絡してください。
ローカルIISWebサーバーで実行するように構成されています(IIS Expressを使用)。このプロジェクトには、.svcファイルを使用して格納されているWCFサービスがあります。これには問題なくアクセスできます。このエラーは、ブラウザーからMVCサイトにアクセスしているときにのみ発生します。Visual Studio Development Serverを使用するようにプロジェクトを切り替えると、正常に機能しているように見えますが、特定の機能をテストするためにサイトにリモートアクセスできる必要があるため、IISExpressで実行する必要があります。
このプロジェクトをVS2012で機能させるには、web.configまたはプロジェクトのプロパティで何かしなければならないことがありますか?
これが私のweb.configからのスニペットです
<authentication mode="Windows" />
<authorization>
<deny users="?" />
</authorization>
<profile>
<providers>
<clear />
<add name="AspNetSqlProfileProvider" type="System.Web.Profile.SqlProfileProvider" connectionStringName="ApplicationServices" applicationName="/" />
</providers>
</profile>
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider">
<providers>
<clear />
<add name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider" connectionStringName="ApplicationServices" applicationName="/" />
<add name="AspNetWindowsTokenRoleProvider" type="System.Web.Security.WindowsTokenRoleProvider" applicationName="/" />
</providers>
</roleManager>
<customErrors mode="Off" />
<httpModules>
<add name="WindowsAuthentication" type="System.Web.Security.WindowsAuthenticationModule" />
</httpModules>