Recentemente mi è capitato di dover effettuare delle validazioni di login di utenti all’interno di un dominio, per fare questo ho utilizzato le classi “Directory Services” di .NET 3.5(System.DirectoryServices.AccountManagement.dll).
Lo snippet di codice C# è davvero semplice:
using System.DirectoryServices.AccountManagement;
…
bool valid = new PrincipalContext(ContextType.Domain, "machine name/ip")
.ValidateCredentials(“userName”,”password”,ContextOptions.Negotiate);
…
logicamente il nome macchina, userName e password devono essere reali(spero che nessuno usi questa naming convention :-) ).
Lascio come riferimento l’articolo di MSDN Magazine che illustra tutte le potenzialità di questa API(fanno molto di più che validare la user name e la password di un utente).
Fonti: http://msdn.microsoft.com/en-us/magazine/cc135979.aspx