web-dev-qa-db-ja.com

ASP.NET MVC 5WebアプリでWindows認証が機能しない

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認証の設定を試してみました。

Development Server Properties

次のappSettingsも追加してみました。

<add key="autoFormsAuthentication" value="false"/>
<add key="enableSimpleMembership" value="false"/>

Windows認証を正しく機能させるにはどうすればよいですか?

13
GiddyUpHorsey

Startup.Auth.csConfigureAuthメソッドには、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);
20
GiddyUpHorsey

ただ頭を上げてください。私はexternalsignincookieを削除しましたが、Cookie認証を完全に削除する必要はありません。 https://github.com/vishnu4/AspNetMVC5WinAuth で私のプロジェクトを見てください。ここでは、OWINとMVC5を使用してWindows認証を使用しています。うまくいけば、これはそれを機能させようとしている他の人を助けるでしょう。

0
Phil