Active Directory中的LDAP过滤器字符串长度限制是多少?

Tom*_*lak 11 ldap active-directory

任何人都可以指向我定义Active Directory中LDAP过滤字符串的最大允许长度的资源吗?

Ste*_*rig 16

根据Technet:Active Directory搜索的工作原理,服务器尝试处理的最大LDAP请求大小默认为10,485,760字节.

如果服务器收到大于此值的请求,则会关闭连接.希望有所帮助.

  • 这仅指请求。也许 MaxQueryDuration、MaxTempTableSize 和 MaxDatagramRecv 在使用这么大的查询时也会生效。我认为响应大小应该由 MaxPageSize 和 MaxResultSetSize 控制。 (2认同)
  • 此大小是真实的,可以杀死您的Active Directory.我们使用RSA令牌进行VPN双因素身份验证.在2012年更新后,RSA实施了一项功能,即尝试记录不属于某些组的用户(或者其他内容,我忘记了具体内容).我们的主要VPN访问组拥有75,000个用户.RSA创建了一个过滤器,它基本上是所有75k用户的"而不是"串联.不用说,这是一个非常昂贵的查询.如此昂贵,它杀死了我们的DC.此时,RSA服务在新DC上重试查询.洗净.冲洗.重复.美好时光! (2认同)

Chr*_*nce 6

根据RFC1558 中的规范,对 LDAP 过滤器字符串的长度没有硬性限制。但是,不同的实现可能有自己的限制。


小智 5

如果您使用 AD 用户和组 GUI 界面来构建查询,您将被限制为 464 个字符。如果您从命令行使用 dsquery,则不限于 464 个字符。我不知道 dsquery 上过滤器长度的上限,但我认为它符合 LDAP 规范。

  • 在我的 Win7x64 ADUC UI 上,查找自定义搜索对话框的“高级”选项卡的“输入 LDAP 查询”中限制为 406 个字符 (2认同)