ldapsearch整个活动目录没有refldap返回

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ldapsearch整个活动目录没有refldap返回相关的知识,希望对你有一定的参考价值。

我试图通过整个AD执行过滤的ldapsearch。但是,当我将basedn设置为域时,我得到“refldap”从查询到其他“分区”的引用响应,即使过滤器不匹配(这是我想要测试的...)

EG

   ldapsearch -LLL -h 127.0.0.1 -b "dc=ad-test,dc=local" -D "cn=ldapproxy,cn=users,DC=ad-test,DC=local" -w password (&(pwmResponseSet=*)(samaccountname=notestuser))" dn

# refldap://ForestDnsZones.ad-test.local/DC=ForestDnsZones,DC=ad-test,DC=local

# refldap://DomainDnsZones.ad-test.local/DC=DomainDnsZones,DC=ad-test,DC=local

# refldap://ad-test.local/CN=Configuration,DC=ad-test,DC=local

有没有办法阻止这些推荐条目/退货?

(我正在尝试将输出写入标志文件,然后我测试其大小...使用虚假条目,即使过滤后的查询失败,我仍然会得到文件大小<> 0

我确实考虑过查询GC,但是我想要的属性没有存储在那里(我不想添加它!)

有任何想法吗?谢谢大卫

答案

我认为我找到了一种可以使用的替代品。如果我在'ldap模式'(https://technet.microsoft.com/en-us/library/cc754232.aspx)中使用RSAT dsquery.exe工具似乎可以做到这一点,即

dsquery * domainroot -filter "(&(pwmResponseSet=*)(samaccountname=%USERNAME%))"

我希望这可以帮助同一条船上的人

干杯大卫

另一答案

如果你有折叠的长行,通过在ldapsearch命令中添加以下参数来防止这种情况是有用的:

-o ldif-wrap=no

如果您使用的是允许它的Windows版本,则可以使用findstr

例如:

ldapsearch -o ldif-wrap=no -LLL -h 127.0.0.1 -b "dc=ad-test,dc=local" ^
    -D "cn=ldapproxy,cn=users,DC=ad-test,DC=local" ^
    -w password ^
    (&(pwmResponseSet=*)(samaccountname=notestuser))" dn | ^
    findstr /r /v /c:"^# refldap" /c:"^$" "%~1" > yourfile.ldif

或者如果你想在linux上这样做:

ldapsearch -o ldif-wrap=no -LLL -h 127.0.0.1 -b "dc=ad-test,dc=local" \
    -D "cn=ldapproxy,cn=users,DC=ad-test,DC=local" \
    -w password \
    (&(pwmResponseSet=*)(samaccountname=notestuser))" dn | \
    grep -v -e "^# refldap" -e "^$" > yourfile.ldif

这可以防止折叠线。

它还会过滤掉所有以# refldap字符串和空行开头的行。

重要说明:不要在Windows上的^或Linux上的\之后留下任何空格,否则它将无效。希望能帮助到你。

以上是关于ldapsearch整个活动目录没有refldap返回的主要内容,如果未能解决你的问题,请参考以下文章

ldap数据库--ldapsearch,ldapmodify

ldapsearch 操作错误:DSID-0C0906E8

ldapsearch使用

从命令行使用 ldapsearch 查询 Windows Active Directory 服务器

sh ldapsearch的

活动目录