【问题标题】:How I use a "NOT" operator in the ldap filter我如何在 ldap 过滤器中使用“NOT”运算符
【发布时间】:2012-08-30 09:23:09
【问题描述】:

我使用过滤器在 Active Directory 中搜索用户列表...

这是我的过滤器示例:

AD.filterung = "(&(objectClass=user)(objectCategory=user)(userAccountControl:1.2.840.113556.1.4.803:=2)(sn=)(|(telephoneNumber= )(mail=))(l=" + Werk + ")(cn=))";

它向我显示所有具有 UF_ACCOUNT_DISABLE 的用户,但我想向所有其他用户显示 not Unlock ...我如何在我的过滤器中构建一个 not 运算符。 :(

【问题讨论】:

    标签: c# asp.net filter active-directory ldap-query


    【解决方案1】:

    您是否尝试过简单地使用“!” ?

    AD.filterung = "(&(objectClass=user)(objectCategory=user)(!userAccountControl:1.2.840.113556.1.4.803:=2)(sn=)(|(telephoneNumber=)(mail=))(l=" + Werk + ")(cn=))";
    

    【讨论】:

    • 请注意 not 运算符。事实证明,这些查询很难优化,因此性能可能会根据查询的性质(要遍历的搜索结果、数据库状态等)变化很大。
    猜你喜欢
    • 2017-07-15
    • 1970-01-01
    • 2023-03-10
    • 1970-01-01
    • 2020-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-11
    相关资源
    最近更新 更多