我需要提取由特定经理管理的所有人员("报告")。每个人都有一个"经理"指向经理的属性。我可以搜索manager属性 - 但这只能查找直接报告。如果我们有一个二级经理,那么它找不到整个团队。
我意识到我可以反复使用搜索查询,但是当人们拥有一个庞大的团队时,这可能会变慢。特别是因为我不知道特定用户是否是经理 - 直到我进行搜索查询。
是否有一个LDAP查询来获取所有报告?我正在使用openldap。在SQL中使用CONNECT BY或WITH RECURSIVE可以进行类似的查询。
答案 0 :(得分:1)
在openLDAP和大多数LDAP实现中使用轻量级目录访问协议(LDAP),您别无选择,只能进行重复的LDAP查询。 (注意单词轻量级)
Microsoft Active Directory有一个非常简洁的可扩展匹配规则,他们称之为LDAP_MATCHING_RULE_IN_CHAIN,可用于此类目的,但它只适用于Microsoft Active Directory。