LDAP 仅非活动用户查询

LDAP only inactive users query

我有一个只搜索活跃用户的 ldap 查询。 查询如下:

"(&(objectclass=user)(objectcategory=person)(!userAccountControl:1.2.840.113556.1.4.803:=2)(whenchanged>=#LAST_DAYS#))"

我以为我只需要删除“!”获得不活跃的用户,但我错了。有什么想法吗?

你确定(whenchanged>=#LAST_DAYS#)是正确的吗?如果是,请尝试在不使用 userAccountControl 的情况下查询帐户,看看它是否比使用 =2 时多 returns 个帐户。 2 代表 UF_ACCOUNT_DISABLE 并对应于帐户属性中的 "Account is disabled" 标志(用户可能无法登录域)。您也可以转到 AD 并查看帐户是否启用了该标志。