ho implementato un'autenticazione basata modulo che utilizza AD in un 3 applicazione ASP MVC seguendo le indicazioni che ho trovato qui ASP.NET MVC - Authenticate users against Active Directory, but require username and password to be inputtedASP.NET MVC Form Auth basato utilizza AD funziona in locale ma fallisce sul server (IIS7)
mi funziona bene quando ho eseguito utilizzando il server di sviluppo ASP.NET, ma non riesce ad andare oltre la pagina di login dopo inserisco le mie credenziali e dà il seguente errore:
errore di configurazione
Descrizione: un errore di occu rred durante l'elaborazione di un file di configurazione necessario per soddisfare questa richiesta. Si prega di rivedere i dettagli specifici degli errori di seguito e modificare il file di configurazione in modo appropriato.
parser messaggio di errore: Un errore operazioni si è verificato.
errore Origine:
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>
Qualsiasi aiuto sarebbe molto apprezzato, grazie in anticipo.
UPDATE: Finora, dopo un paio di esegue il debug Penso errore potrebbe essere provenienti da System.Web.Security.ActiveDirectoryMembershipProvider
nella configurazione Web.xml, ho aggiunto System.Web
(in cui si trova quella classe) come riferimento e anche di fare un copia locale ma ancora, zip ... :(
Questo potrebbe non essere il caso in cui l'applicazione funziona perfettamente quando passo da Form a Windows come metodo di autenticazione. – dotKwame
Questo è perfettamente normale. Quando si utilizza l'autenticazione di Windows si stanno utilizzando le credenziali del client per richiedere l'annuncio. Quando si utilizza l'autenticazione anonima, non ci sono permessi. –
Quindi, appena testato con un provider di appartenenza AD personalizzato che "manualmente" autenticato tramite l'annuncio nel codice 'DirectoryEntry dsEntry = new DirectoryEntry (ldapSvrAddr, model.Username, model.Password); object nativeobj = dsEntry.NativeObject; ', quindi ha cambiato il tipo in web.config da' System.Web.Security.ActiveDirectoryMembershipProvider' a 'MyNamespace.MyCustomADClass' e ha funzionato correttamente (nessuna connessioneUn utente o password richiesti), ma desidero usa il provider di appartenenza AD standard nel framework .net e non finisci per implementare tutto – dotKwame