2

イントラネットで使用するアプリケーションを開発しています。Active Directory を使用するアプリケーションに Windows 認証を使用しています。しかし、他のマシンからアプリケーションにアクセスすると、ユーザー名とパスワードの入力を継続的に求められます。Windows認証、ID偽装の設定をweb.configに追加しました。また、アプリケーションのみの Windows 認証の IIS 設定が有効になっています。匿名認証は無効です。私の観察では、IIS 6 では問題なく動作します。しかし、IIS 7.5 でアプリケーションをホストしようとすると、ユーザー名とパスワードを継続的に要求されます。また、Google Chrome では動作しません。

何が問題になるのですか??? 助けてください...

4

1 に答える 1

2

同じアプリケーションで ASP.NET フォーム認証と IIS Windows 認証を使用する

ユーザーがフォーム認証を使用してログインできる login.aspx ページがあります。ただし、すべてのユーザーは、サーバー (または Active Directory) に Windows アカウントも持っています。何らかの理由で、すべてのユーザーが最初に Windows 資格情報を使用してログインし、次にメンバーシップ資格情報とフォーム認証を使用してログインする必要があります。Windows 認証を有効にし、IIS で匿名認証を無効にすることでこれを行うことができます。これにより、リクエストが ASP.NET に到着する前に IIS によって拒否され、ユーザーが最初に Windows 認証によって認証されるようになります。

これは、IIS 6.0 およびクラシック モードの IIS 7.0 で機能します。ただし、統合モードでは、Windows 認証とフォーム認証の両方が単一段階の認証プロセスで実行されるため、最初に Windows 認証で認証し、次にフォーム認証で認証することはできません。さらに、フォーム認証はアプリケーション全体で有効になっているため、アプリの一部ではなく別のアプリで有効にする方法がありません。フォーム認証の 302 リダイレクト チャレンジは 401「WWW-Authenticate」と互換性がないため、問題が発生します。 」 Windows 認証で使用されるチャレンジ。フォーム認証は、アプリケーションへの承認されていない要求を常に 302 リダイレクトに変換するため、Windows 認証が破られます。

詳細については、このリンクを参照してください。

于 2013-03-25T05:11:15.870 に答える