1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
// Parametre de connexion de l'utilisateur TEST
$server = "192.168.0.1";
$port = "389";
$racine = "OU=Utilisateurs,DC=google,DC=com"; //
$rootdn = "CN=Test Test,OU=Utilisateurs,DC=google,DC=com";
$rootpw = "google";
// Parametre de la personne se loguant
$rootdn_util = ""; // distinguishedName ou DN
$rootpw_util = $pass; // le Mot de passe Windows du formulaire
// Connexion à l'AD
$ds = ldap_connect($server,$port);
if ($ds)
{
// Bind à l'AD avec l'utilisateur TEST
$db = ldap_bind($ds,$rootdn,$rootpw);
if ( $db )
{
// Recherche à partir du login le DN
$sr = ldap_search($ds,$racine,'(&(objectclass=person)(sAMAccountName='.$login.'))');
$info = ldap_get_entries($ds,$sr);
if ( $info['count'] > 0)
{
//echo 'Utilisateur trouvé<br/>';
$rootdn_util = $info[0]['distinguishedname'][0];
// On rebind sur ce nouvel utilisateur
if ( ldap_bind($ds,$rootdn_util,$rootpw_util))
{
//l'utilisateur se trouve bien dans l'AD
}
else echo 'Mauvais Mot de passe';
}
else echo 'Utilisateur non trouvé';
ldap_unbind($ds);
}
else echo 'ldap_search failed retour : '.$db;
}
else echo 'ldap_connect failed retour :'.$ds; |
Partager