PHP& LDAP - 从sAMAccountName检索用户属性

时间:2014-03-07 13:42:28

标签: php ldap

是否可以使用用户凭据绑定到ldap服务器并返回该用户的OU成员资格详细信息?

我正在创建一个系统,用户登录,与LDAP服务器绑定,并根据他们是正确视图成员的OU进行渲染。

目前我可以返回有关用户的一些详细信息,但它要求我使用用户CN。我希望用户不必输入他们的名字。

$user='xxx';
$pass='yyy';
    $ldaprdn  = $user.'@x.xxx.com';     // ldap rdn or dn :: We concatenate the username with the domain to create the proper string for querying the ldap server
    $ldappass = $pass;  // associated password

    $ldapconn = ldap_connect("x.xxx.com")
            or die("Could not connect to LDAP server.");

        if ($ldapconn) {
            // binding to ldap server
            $ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
        }

            // verify binding
            if ($ldapbind) {
            $ds = 'nx.xxx.com';
            $dn ="cn=Jonathan Rxxxr,OU=MIS Department,OU=People,DC=x,DC=xxx,dc=com";
            $filter="(objectClass=user)";

            $justthese = array("ou", "sn", "dn", "givenname", "mail");

             $sr=ldap_search($ldapconn, $dn, $filter, $justthese);

            $info = ldap_get_entries($ldapconn, $sr);
            $ou = strtolower($info[0]["mail"][0]);
            echo $ou;
            print_r($info);//I print the array just for debugging purposes

                echo $info["count"]." entries returned\n";
                echo "success";

0 个答案:

没有答案