6

ここで見つけた指示に従って、ASP MVC 3アプリケーションでADを使用するフォームベースの認証を実装しましたASP.NET MVC - Active Directoryに対してユーザーを認証しますが、ユーザー名とパスワードを入力する必要があります

ASP.NET 開発サーバーを使用して実行すると問題なく動作しますが、資格情報を入力した後、ログイン ページを超えることができず、次のエラーが表示されます。

構成エラー

説明:この要求を処理するために必要な構成ファイルの処理中にエラーが発生しました。以下の特定のエラーの詳細を確認し、構成ファイルを適切に変更してください。

パーサー エラー メッセージ:操作エラーが発生しました。

ソース エラー:

Line 37:     <membership defaultProvider="MY_ADMembershipProvider">
Line 38:       <providers>
Line 39:         <add name="MY_ADMembershipProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider" connectionStringName="ADConnectionString" attributeMapUsername="sAMAccountName" />
Line 40:       </providers>
Line 41:     </membership>

事前に感謝します。

更新: これまでのところ、いくつかのデバッグの後System.Web.Security.ActiveDirectoryMembershipProvider、Web.xml構成でエラーが発生している可能性があると思いますSystem.Web.参照として(そのクラスが見つかった)追加し、ローカルコピーを作成しましたが、それでもzip ... :(

4

2 に答える 2

6

ADを照会するのに十分な権限を持つアカウントの有効なユーザー名とパスワードを渡したことを確認してください。

<add 
    name="MY_ADMembershipProvider" 
    type="System.Web.Security.ActiveDirectoryMembershipProvider" 
    connectionStringName="ADConnectionString" 
    attributeMapUsername="sAMAccountName" 
    connectionUsername="YOURDOMAIN\SomeAccount"
    connectionPassword="secret"
/>

これを行わない場合は、ActiveDirectoryにクエリを実行するのに十分な特権を持つアカウントで実行するようにIISのアプリケーションプールを構成する必要があります。デフォルトでは、アプリケーションはADにアクセスできないローカルNetworkServiceアカウントで実行されます。

于 2013-02-19T09:54:36.513 に答える
6

アプリケーション プールの ID を「ApplicationPoolIdentity」から「NetworkService」に変更したところ、すべてが正常に機能するようになりました。

于 2013-12-24T15:49:40.610 に答える