Categorias

Autenticando usuários com LDAP e Active Directory no PHP

Um função bem simples para aqueles que querem verificar se o usuário está validado no Active Diretory.

Usa a função LDAP do PHP.

<?php

/*********************************************
Função de validação no AD via protocolo LDAP
como usar:
valida_ldap("servidor", "domíniousuário", "senha");

*********************************************/

function valida_ldap($srv, $usr, $pwd){
$ldap_server = $srv;
$auth_user = $usr;
$auth_pass = $pwd;

// Tenta se conectar com o servidor
if (!($connect = @ldap_connect($ldap_server))) {
return FALSE;
}

// Tenta autenticar no servidor
if (!($bind = @ldap_bind($connect, $auth_user, $auth_pass))) {
// se não validar retorna false
return FALSE;
} else {
// se validar retorna true
return TRUE;
}

}

// EXEMPLO do uso dessa função
$server = ""; //IP ou nome do servidor
$dominio = "" //Dominio Ex: @gmail.com
$user = "seu_usuario".$dominio;
$pass = "sua_senha";

if (valida_ldap($server, $user, $pass)) {
echo "usuário autenticado<br-->";
} else {
echo "usuário ou senha inválida";
}

?>