LDAP过滤器

时间:2015-06-05 12:19:50

标签: filter ldap negation

我尝试编写一个带有两个否定的LDAP过滤器。我需要所有未被禁用且不属于OU = Abt99的用户。

这是我目前的过滤器:

(&(objectClass=user)(objectCategory=person)(samaccountname={USERNAME})(!(userAccountControl:1.2.840.113556.1.4.803:=2)))

我试过

(&(objectClass=user)(objectCategory=person)(samaccountname={USERNAME})(!(userAccountControl:1.2.840.113556.1.4.803:=2)(OU=Abt99)))

(&(objectClass=user)(objectCategory=person)(samaccountname={USERNAME})(!(userAccountControl:1.2.840.113556.1.4.803:=2)!(OU=Abt99)))

以及

(&(objectClass=user)(objectCategory=person)(samaccountname={USERNAME})(&(!(userAccountControl:1.2.840.113556.1.4.803:=2)(OU=Abt99))))

没什么用的。 我read只有一个过滤器受到非操作员的影响,但必须有办法说出这样的事情,而不是这个而不是那个'。 也许有人可以帮助我吗?

1 个答案:

答案 0 :(得分:0)

不是这个的基本形式而不是那个'在LDAP的过滤器前缀表示法中是:

(&(!(this))(!(that)))

然而,根据de Morgan的法律,这相当于' not(this或that)'或者:

(!(|(this)(that)))

你可能会发现更清楚。