我正在尝试从Linux机器(CentOS 5.8)运行LDAP查询到Windows LDAP服务器,并希望获取用户的“memberof”详细信息。在本例中,域是cm.loc,用户是[email protected]。这是我正在使用的ldapsearch语法。它返回一个错误。
有人能给我指出正确的方向,使用ldapsearch查询特定帐户的memberof detail的正确语法是什么吗?
下面是我使用的返回错误的内容;“ldap search ext bad search filter 7”
我的语法哪里错了?
ldapsearch –x –h 192.168.1.20 –b 'DC=cm,DC=loc' -s base –D '[email protected]' -W '(&(objectCategory=Group)(|(memberOf=group1)(memberOf=group2)…))'
谢谢您
最佳答案
语法看起来没问题,您需要为memberOf
查询使用完整的DN语法,它仍然是memberOf=
,而不是memberOf:
-如果您使用冒号语法,那么您将得到错误的搜索筛选器错误。
接下来,必须根据RFC4515的规范对搜索字符串进行转义。这通常意味着搜索字符串术语中的以下字符:\
、*
、(
和)
必须分别使用\5c
、\2a
、\28
、\29
转义,否则将得到相同的错误-错误的搜索术语。这是ldap服务器可能已经应用于DN的转义的顶部。
关于linux - 尝试从linux ldapsearch命令获取detailof成员,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18814825/