繁体   English   中英

ldap在绑定期间获取名称

[英]ldap get name during bind

我认为这应该很容易,但是我已经花了几个小时了。 我试图在绑定到LDAP服务器时从其获取信息。 绑定很好,但30秒后超时,表明部分结果。 如果我注释掉搜索部分,则绑定是即时的(假设用户名,密码正确),所以我知道这是可行的。 我想获取LDAP在该用户名上拥有的所有信息,但是我只想使用该名称。

    $ldapuser = 'mypassword';
    $ldappass = 'myusername';

    $ldapconn = ldap_connect("ldap://ds.cisco.com:389")
    or die("Could not connect to the ldap server");

    if($bind = @ldap_bind($ldapconn, $ldapuser."@cisco.com", $ldappass)) {
ldap_set_option($ldapconn, LDAP_OPT_REFERRALS, 0);
ldap_set_option($ldapconn, LDAP_OPT_PROTOCOL_VERSION, 3);
$filter = "(uid=" . $ldapuser."@cisco.com" . ")";
$ldap_dn = "DC=cisco,DC=com";
$attr = array("sn","cn");
$result = ldap_search($ldapconn, $ldap_dn, $filter, $attr) or exit("Unable to search LDAP server");
$entries = ldap_first_entry($ldapconn, $result);
ldap_unbind($ldapconn);


echo '<pre>';
print_r($entries);  
echo '</pre>';

}

尝试更改:

$attr = array("sn","cn");

至:

$attr = array( );

-吉姆

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM