Skip to content
12 de setembro de 2011 / rafaelti

Validação de cliente no LDAP(Lightweight Directory Access Protocol) ou Active Directory

Objetivo
Validar usuário no LDAP ou Active Directory

Plataforma
Delphi, windows e LDAP, funcionará em qualquer versão, salvo o engano, mas eu utilizei o Delphi 2010.

Conhecimento
Delphi, rede, LDAP ou Active Directory

Introdução
Aqui suponho que já saiba levantar o serviço e configurá-lo ou já esteja com o ambiente pronto para teste. Logo, para validar um usuário é necessário três itens:
Servidor: Local onde será feita a validação Ex.: LDAP://empresa.br:389
Usuário: O usuário está em um árvore, ou seja, quando for pesquisar o usuário deve informar a árvore em que ele se encontra Ex.: uid=Rafael Rocha,ou=people,dc=empresa,dc=br’
Senha: O código para validar o usuário, se você precisa de um exemplo, pode parar de ler e voltar para o facebook ou pior, orkut.

Solução
Para a solução utilizaremos a DLL do Windons que é activeds.dll, esta DLL tem como uns dos parâmetros um ponteiro para uma estrutura, você pode codificá-la ou baixá-la no AgniSoft

Eu fui pelo caminho fácil e peguei tudo mastigado. No uses inclua  as units ActiveDs_TLB e adshlp

 uses
 SysUtils,
 ….,
 ActiveDs_TLB,
 adshlp;
A função faça:
function EhUsuarioValido(Servidor, Usuario, Senha: pchar): Boolean;
var hr : integer;
    obj : IADs;
begin
  try
    hr := ADsOpenObject(Servidor, Usuario, Senha, ADS_PROMPT_CREDENTIALS , IADs, obj);
    Result :=Succeeded(hr);
  except
    Result := False;
  end;
end;

Com isso já tem uma validação para o LDAP no entando, caso deseje criar uma DLL coloque as diretiva Export; stdcall no final da função.

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: