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 50 51 52 53 54 55 56 57 58 59 60
| <?php
$baseDN = "dc=test,dc=fr"; //test.fr
$ldapServer = "server";
$dn = 'ou=Boussois,ou=France,ou=IT-Users,dc=test,dc=fr'; //arborescence : test.fr=> IT-Users => France => Boussois<br>
echo "Connexion au serveur <br />";
$conn=ldap_connect($ldapServer);
// on teste : le serveur LDAP est-il trouvé ?
if ($conn)
echo "Le résultat de connexion est ".$conn ."<br />";
else
die("connexion impossible au serveur LDAP");
/* 2ème étape : on effectue une liaison au serveur, ici de type "anonyme"
* pour une recherche permise par un accès en lecture seule */
// On dit qu'on utilise LDAP V3, sinon la V2 par défaut est utilisé
// et le bind ne passe pas.
if (ldap_set_option($conn, LDAP_OPT_PROTOCOL_VERSION, 3)) {
echo "Utilisation de LDAPv3 \n";
} else {
echo "Impossible d'utiliser LDAP V3\n";
exit; }
$bindServerLDAP=ldap_bind($conn);
print ("Liaison au serveur : ". ldap_error($conn)."\n");
// en cas de succès de la liaison, renvoie Vrai
if ($bindServerLDAP)
echo "Le résultat de connexion est $bindServerLDAP <br />";
else
die("Liaison impossible au serveur ldap ...");
/* 3ème étape : on effectue une recherche anonyme, avec le dn de base,
par exemple, sur tous les noms commençant par B */
echo "Recherche suivant le filtre (sn=B*) <br />";
$query = "sn=B*";
$result=ldap_search($conn, $baseDN, $query);
echo "Le résultat de la recherche est $result <br />";
echo "Le nombre d'entrées retournées est ";
echo ldap_count_entries($conn,$result)."<p />";
echo "Lecture de ces entrées ....<p />";
$info = ldap_get_entries($conn, $result);
echo "Données pour ".$info["count"]." entrées:<p />";
for ($i=0; $i < $info["count"]; $i++) {
echo "dn est : ". $info[$i]["cn"] ."<br />";
echo "premiere entree cn : ". $info[$i]["cn"][0] ."<br />";
echo "premier email : ". $info[$i]["mail"][0] ."<p />";
}
/* 4ème étape : clôture de la session */
echo "Fermeture de la connexion";
ldap_close($conn);
?> |
Partager