2012-08-10 15 views
6

si può usareProgramatically set connectionString per ActiveDirectoryMembershipProvider

new PrincipalContext(ContextType.Domain,null) 

senza fornire le stringhe di connessione per l'Active Directory.

Quando si utilizza ActiveDirectoryMembershipProvider è necessario fornire un endpoint LDAP in web.config.

Il sito su cui sto lavorando verrà distribuito su più siti e non desidero dover compilare i dettagli nello web.config per ciascun dipendente.

How To: Use Forms Authentication with Active Directory in Multiple Domains su MSDN specifica 3 (!) Provider di appartenenze per gestire 3 domini che non sono impressionanti. Tuttavia, questo articolo è del 2005 e tratta di compiti diversi da quelli che sto cercando.

La domanda:

è è possibile utilizzare ActiveDirectoryMembershipProvider in un modo che il punto finale LDAP non è hard-coded nel web.config?

io preferirei usare ActiveDirectoryMembershipProvider piuttosto che PrincipalContext avere (potenzialmente) la possibilità di chiamare ChangePassword ecc

risposta

0

No, non è possibile utilizzare ActiveDirectoryMembershipProvider senza specificare un server di destinazione LDAP.

La stringa di connessione deve essere specificato, e la stringa deve contenere un server (contiene ADS_FORMAT_SERVER)

È necessario creare un elemento connectionStrings (schema delle impostazioni ASP.NET) voce nel file web.config che identifica il server Active Directory , il dominio Active Directory o la partizione dell'applicazione ADAM da utilizzare. Il provider funzionerà solo nell'ambito di dominio o in un sottoscope all'interno di un dominio.

Se si desidera supportare una foresta di directory attiva e l'autenticazione dei moduli in perdita è un'opzione, prendere in considerazione l'utilizzo dell'autenticazione di Windows. Autenticazione di Windows utilizza NTLM e Kerberos per ottenere l'identità dell'utente all'interno di una foresta e puoi comunque modificare la password di un utente tramite la rappresentazione. Vedi WindowsIdentity.Impersonate().

Problemi correlati