$ldapserver = ldap_connect("ldapserver.wlv.ac.uk");
if(!$ldapserver)
{
print "
connection error";
exit(0);
}
$bind = ldap_bind($ldapserver);
if(!$bind)
{
print "
bind error";
exit(0);
}
$base_dn = "DC=unv,DC=wlv,DC=ac,DC=uk";
$filter = "cn=" . $userid;
$inforequired = array("employeeType",
"department","employeeID","mail","givenName","sn");
$result = ldap_search($ldapserver,$base_dn,$filter,$inforequired);
$info = ldap_get_entries($ldapserver,$result);
if(!$result)
{
print "
anonymous search failed";
exit(0);
}
if($info["count"] == 0)
{
print "
User unknown";
exit(0);
}
if($info["count"] > 1)
{
print "
More than one such user - report to CITS";
exit(0);
}
$user_dn = $info[0]["dn"];
$bind = @ldap_bind($ldapserver,$user_dn,$_POST['password']);
if(!$bind)
{
print "
bind failed";
print "
user not authenticated";
exit(0);
}
ldap_close($ldapserver);
?>
No comments:
Post a Comment