Hello,

I am running PHP on IIS5.0. I want users that come on the intranet to be
authenticated through the Active Directory. In other words, for example
if user that comes to the page belongs to a certain group in Active
Directory, he/she will see one page, but if user belongs to a different
group in Active Directory he/she will see a different page. I've read on
the Internet that it can be done with LDAP, but I wasn't able to find
any detailed information on how it can actually be done. I tried to do
it myself using LDAP functions described on the php.net, but I've hit
the wall. It looks like I am able to connect to the LDAP server and bind
it, but I can't seem to do any search on it. Below is the code that I
used. Can anybody help?

<?php
// specify the LDAP server to connect to
$conn = ldap_connect("192.XXX.XXX.XXX") or die("Could not connect to
server");  

// bind to the LDAP server specified above 
$r = ldap_bind($conn) or die("Could not bind to server");     

// verify binding
if ($r) {
echo "LDAP bind successful...";
} else {
echo "LDAP bind failed...";
}

// start searching
// specify both the start location and the search criteria
// in this case, start at the top and return all entries

$base_dn = "DC=my_domain,DC=com";
$filter = "(cn=*)";

$result = ldap_search($conn, $base_dn, $filter) or die ("Error in search
query");  

// get entry data as array
$info = ldap_get_entries($conn, $result);

// iterate over array and print data for each entry
for ($i=0; $i<$info["count"]; $i++) 
{
    echo "dn is: ". $info[$i]["dn"] ."<br>";
    echo "first cn is: ". $info[$i]["cn"][0] ."<br>";
    echo "first email address is: ". $info[$i]["mail"][0] ."<p>"; }

// print number of entries found
echo "Number of entries found: " . ldap_count_entries($conn, $result) .
"<p>";

// all done? clean up
ldap_close($conn);

?>


--
PHP Windows Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to