ASP.NET MVC 5アプリを使用していて、Windows認証を有効にしようとしています。開発マシンは、Windows Server 2008 R2、IIS Express 8.0、Visual Studio 2013、および.NET Framework4.5です。
アプリを閲覧すると、404 NotFoundエラーが発生します。アプリはhttp:// localhost:63455/Account/Login?ReturnUrl =%2Fでリダイレクトループに入ります。最終的に、ReturnUrl
は、リダイレクトごとに追加されるため、非常に大きくなります。
私のweb.configは次のようになります。
<system.web>
<authentication mode="Windows"/>
</system.web>
開発サーバーのプロパティで匿名認証およびWindows認証の設定を試してみました。
次のappSettings
も追加してみました。
<add key="autoFormsAuthentication" value="false"/>
<add key="enableSimpleMembership" value="false"/>
Windows認証を正しく機能させるにはどうすればよいですか?
Startup.Auth.cs
のConfigureAuth
メソッドには、Windows認証のために削除する必要がある次のコードが含まれていました。
コードはフォーム認証と[〜#〜] owin [〜#〜]に使用されます。
// Enable the application to use a cookie to store information for the signed in user
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = DefaultAuthenticationTypes.ApplicationCookie,
LoginPath = new PathString("/Account/Login")
});
// Use a cookie to temporarily store information about a user logging in with a third party login provider
app.UseExternalSignInCookie(DefaultAuthenticationTypes.ExternalCookie);
ただ頭を上げてください。私はexternalsignincookieを削除しましたが、Cookie認証を完全に削除する必要はありません。 https://github.com/vishnu4/AspNetMVC5WinAuth で私のプロジェクトを見てください。ここでは、OWINとMVC5を使用してWindows認証を使用しています。うまくいけば、これはそれを機能させようとしている他の人を助けるでしょう。