LDAP 搜索查询(使用或)不返回值

LDAP 搜索查询(使用或)不返回值

我在 LDAP 中使用以下查询:

ldapsearch -D "uid=test,cn=Users,cn=accounts,dc=earthlinktele,dc=com" -w dsaasddsa -b "cn=accounts,dc=earthlinktele,dc=com" "(&(|(objectcategory=person)(objectClass=account)(objectClass=posixAccount)(objectClass=inetOrgPerson)(objectClass=user)(objectClass=userProxy))(|(samaccountname=test)(displayName=test)(userprincipalname=test)(uid=test)))"

但它没有返回任何结果,尽管 (uid=test) 和 (objectClass=posixAccount) 为 TRUE,并且它们前面有 OR 运算符。为了检查用户是否有权搜索 LDAP,我使用了以下过滤器,该过滤器成功返回了所需的结果:

(&(objectClass=posixAccount)(uid=test))

我还尝试使用管理员用户作为“BindDN”,并返回了结果。

ldapsearch -D "uid=admin,cn=Users,cn=accounts,dc=earthlinktele,dc=com" -W -b "cn=accounts,dc=earthlinktele,dc=com" "(&(|(objectcategory=person)(objectClass=account)(objectClass=posixAccount)(objectClass=inetOrgPerson)(objectClass=user)(objectClass=userProxy))(|(samaccountname=test)(displayName=test)(userprincipalname=test)(uid=test)))"

为什么第一次搜索不起作用?我必须授予“测试”用户任何权限吗?

相关内容