这可能是非常愚蠢的,但我仍然是绿色的LDAP。所以我希望有人可以伸出援助之手。
我正在使用Apache Directory Studio进行搜索,我很困惑何时应该使用过滤器,或者我应该将我的过滤器分成两部分,使用一部分作为过滤器,另一部分作为我的搜索库。
以下是我尝试过滤群组的示例。
Filter: CN=JohnTestGroup,OU=TECH,DC=lab,DC=ing
Base: DC=lab,DC=ing
这导致零结果。我意识到也许我是多余的,因为基础的一部分是在过滤器中,所以我摆脱了过滤器中的那部分。
Filter: CN=JohnTestGroup,OU=TECH
Base: DC=lab,DC=ing
这仍然没有产生任何结果。所以我尝试了这个:
Filter: CN=JohnTestGroup
Base: OU=TECH,DC=lab,DC=ing
我将OU
参数移到Base
。这有效,但我不明白为什么第一次或第二次尝试没有。有人想关注我的一些知识吗?
这可能是语法/语义的问题,所以如果有人能指出我的资源,我会非常愿意阅读更多关于它的信息。
答案 0 :(得分:2)
了解那里的范围:http://www.idevelopment.info/data/LDAP/LDAP_Resources/SEARCH_Setting_the_SCOPE_Parameter.shtml
如果您将搜索范围设置为SUBTREE(2和3),则可能的1个变体开始工作,但按子树搜索的速度较慢
答案 1 :(得分:1)
我认为您误解了过滤器的工作原理。它意味着键=值配对。
所以(objectClass = iNetOrgPerson)为例。
如果您希望过滤器找到DN,那么您选择一个识别特征,如CN,过滤器(CN = JohnTestGroup)或者(mail = John@@@)。
基础告诉LDAP服务器从哪里开始查找,作为他/她的答案中的seriyPS注释,SCOPE是下一个问题。服务器应该搜索多深,因为这会增加开销和性能问题。子树在概念上是简单的。只要继续向下看,直到你没有树来看透。
这就是你的最后一个有效的原因。
现在,如果要查找特定对象并且知道其DN,则对特定DN的基础执行ENTRY范围查询。