0

由于 Microsoft AD 具有 maxpagesize 属性,该属性用于将每页从目录返回到客户端的最大记录数。因此,如果我们想从 Microsoft AD 中获取更多记录(比配置为 maxpagesize),我们需要进行分页。

所以为了实现这一点,我们想通过 Netscape API 在客户端读取这个 maxpagesize 的值。所以你能在这方面帮助我们吗?是否真的有可能,否则我们需要在 UI 中配置页面大小。

谢谢, 赫鲁希

4

1 回答 1

1

MaxPageSize 是Active Directory 中 LDAP 策略的一部分,并且由于 Windows Server 2008 R2 或 Windows Server 2008 域控制器,硬编码限制规定 MaxPageSize=20,000 和 MaxValRange=5,000。

该值可以从以下位置读取:

dn: CN=Default Query Policy,CN=Query-Policies,CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=mad,DC=example,DC=com

但现实生活从来没有那么简单。

LDAP 策略是使用 lDAPAdminLimits 属性指定的。queryPolicy 对象的 lDAPAdminLimits 属性是一个多值字符串,其中每个字符串值编码一个名称-值对。在编码中,名称和值用“=”分隔。例如,值为“0”的名称“MaxActiveQueries”的编码是“MaxActiveQueries=0”。每个名称都是 LDAP 策略的名称,值是该策略的值。

一个林中可以有多个 queryPolicy 对象。DC根据以下逻辑确定包含其策略的queryPolicy对象:

  • 如果在 DC 的 nTDSDSA 对象上存在 queryPolicyObject 属性,则 DC 使用它所引用的 queryPolicy 对象。

  • 否则,如果在 DC 所属站点的 nTDSSiteSettings 对象上存在 queryPolicyObject 属性,则 DC 使用它所引用的 queryPolicy 对象。

  • 否则,DC 使用相对于 nTDSService 对象的 DN 为“CN=Default Query Policy,CN=Query-Policies”的 queryPolicy 对象(例如,“CN=Default Query Policy, CN=Query-Policies, CN=Directory Service , CN=Windows NT, CN=Services" 相对于配置 NC 的根目录)。

最后,Windows Server 2008 和 Windows Server 2008 R2(我稍后假设)中的 MaxPageSize 有一个硬编码限制,当策略值应该更高时,它会覆盖Active Directory 设置中的LDAP 策略

于 2020-05-29T13:41:10.657 回答