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 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86
| <html>
<head>
<title>AUTHENTIFICATION LDAP</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style>
BODY {
font-family: Verdana, Arial, Helvetica;
font-size: 12px;
}
P {
font-family: Verdana, Arial, Helvetica;
font-size: 12px;
}
</style>
</head>
<body>
<h3>AUTHENTIFICATION LDAP </h3>
<p>
<form action="<? PHP_SELF ?>" method="post" name="form1">
<b>Login:</b><br>
<input type="text" name="login" size="30" maxlength="100" />
<input type="password" name="password" size="30" maxlength="100"/>
<br>
<input type="submit" value="go">
</form>
</p>
<?
$u = $_POST["login"];
$p = $_POST["password"];
$baseDN = "dc=societe,dc=fr";
$ldapServer = "192.168.0.10";
$ldapServerPort = 389;
$dn = 'o=permanents,ou=PersonneL,dc=societe,dc=fr';
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");
// 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 ...");
/*on effectue une recherche anonyme, avec le dn de base*/
echo "Recherche suivant le filtre (sn='$u') <br />";
$query = "uid=".$u;
$mdp=$p;
$result=ldap_search($conn, $baseDN, $query);
echo "Le résultat de la recherche est $result <br />";
$nb = ldap_count_entries ($conn,$result);
echo "Nombre d'entrées retournées : ".$nb;
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 "premiere entree cn : ". $info[$i]["cn"][0] ."<br />";
echo "premier email : ". $info[$i]["mail"][0] ."<p />";
}
/* clôture de la session */
echo "Fermeture de la connexion";
ldap_close($conn);
?> |
Partager