在测试中,常遇到需要测试我们系统的AD/LDAP大用户量展现和下载功能,但windows server似乎限制该查询数量为1000,使用包括ldap browser在内的工具,也不能将我们AD server上面的10000用户展现完全。
其实这个问题在微软的网站已经给出了解决方案,在微软网站搜索“ad 1000“就能找到:
http://support.microsoft.com/kb/315071
其原因是windows server出于性能负荷的考虑,将LDAP查询的数量限制为1000个。当AD中的条目(user/group/ou)数量超过1000条时,使用LDAP查询工具进行查询时,就会导致查询结果返回出错。
我们所使用的AD用户已超过10000,因此导入用户时,就会有出错信息提示。而且每次最多也只能够展示和导入1000个用户。
解决办法可以参见微软网站,这里也作一个记录,以免以后遗忘。步骤如下(建议查看微软网站的描述,其中可控参数描述得很详细):
- 在“开始”-〉“运行”-〉输入:“
ntdsutil
”,回车; - 输入:“
ldap policies
”,回车; - 输入:“
connections
”,回车; - 输入:“
connect to domain 当前域名
”在本案例中,域名是:cm-inv.com - 连接提示出现后,输入:“
quit
”,回车; - 输入:“
show values
”,确认当前的最大返回数;(默认是1000) - 输入:“
set maxpagesize to 10000
”,将最大返回数改为10000。(最大返回数可以根据实际情况自行定义)。 - 再度输入:“
show values
”,确认当前的最大返回数(显示为:1000(10000))。 - 输入“
commit changes
”以确认修改。 - 再次输入:“
show values
”,确认当前的最大返回数为10000。 - 输入“
quit
”,退出设置状态; - 输入“
quit
”,退出当前命令。