Autenticação de usuários no AD (Active Directory)


Para quem usa .NET 3.5 e precisar algum dia fazer autenticação de usuários via AD, pode ficar mais tranquilo que vai ser um pouco mais fácil. Ao procurar no Google sobre autenticação AD para .NET, existem várias pessoas falando sobre System.DirectoryServices do .NET que fornece várias classes para auxiliar a obter informações do AD, porém, essas classes normalmente são bem grandes e chatas de serem implementadas. Hoje eu descobri uma classe ninja que faz todo o trabalho sujo para nós e o melhor é do .NET Framework 3.5.

A classe em questão chama-se PrincipalContext e fica dentro do namespace System.DirectoryServices.AccountManagement. Com apenas 2 linhas de código você consegue saber se aquele usuário é válido no AD:

PrincipalContext principalContext = new PrincipalContext(ContextType.Domain, "DOMINIO");

if (!principalContext.ValidateCredentials("usuario", "senha"))
{
       //...faz algum tratamento para usuários inválidos
}

Bem simples, não?

Espero que possa ajudar a quem precisar disso um dia…
[]s

, ,

  1. Nenhum comentário ainda.
(não será publicado)