【发布时间】:2011-08-22 01:23:32
【问题描述】:
我有一个测试环境,包括两台windows 2003 服务器,一台运行IIS6.0 和php 5.2,另一台是域控制器。我正在尝试获取一个 php 脚本来使用 LDAP 来查找服务器上的所有用户。
域是 openDesk.local 和 users 和默认 OU 中的用户。
到目前为止,我能够连接并绑定到域控制器我只是无法搜索它,我有大约 1 小时的 LDAP 经验,所以我相当确定它与搜索有关的简单语法错误,当我运行这段代码,我得到“搜索失败”。
<?php
$host = "192.168.1.98";
$user = "username";
$pswd = "password";
$ad = ldap_connect($host)
or die( "Could not connect!" );
ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3)
or die ("Could not set ldap protocol");
$bd = ldap_bind($ad, $user, $pswd)
or die ("Could not bind");
$dn = "OU=users,DC=openDesk,DC=local";
$filter = "cn=*";
$search = ldap_search($ad, $dn, $filter)
or die ("Search failed");
$entries = ldap_get_entries($ad, $search);
echo $entries["count"];
?>
【问题讨论】:
-
问题是用户是 CN 过滤器应该是 (objectClass=*)
标签: php ldap windows-server-2003