我需要有關LDAP搜索篩選器提取嵌套組成員資格的信息。基本上,我的想法是說,例如,一個用戶屬於5個組[A,B,C,D,E] 我可以編寫一個LDAP搜索查詢來獲取成員組到哪個組[A,B,C ,D,E]可能是?我可以遞歸地使用這個logc來檢索所有的組信息,直到AD的完整根目錄爲止?嵌套組LDAP搜索篩選器
而我需要此解決方案爲通用AD,因此我不能使用僅適用於MS AD的LDAP_RULE_IN_CHAIN過濾器。
我需要有關LDAP搜索篩選器提取嵌套組成員資格的信息。基本上,我的想法是說,例如,一個用戶屬於5個組[A,B,C,D,E] 我可以編寫一個LDAP搜索查詢來獲取成員組到哪個組[A,B,C ,D,E]可能是?我可以遞歸地使用這個logc來檢索所有的組信息,直到AD的完整根目錄爲止?嵌套組LDAP搜索篩選器
而我需要此解決方案爲通用AD,因此我不能使用僅適用於MS AD的LDAP_RULE_IN_CHAIN過濾器。
所有組的用戶是包括嵌套的組
作爲一個例子,要查找所有的基團「CN =約翰·史密斯,DC = MYDOMAIN,DC = NET」是其成員的成員,設置基地到組容器DN;例如(OU = groupsOU,DC = MyDomain,DC = NET)並將範圍映射到子樹,並使用以下過濾器。
(構件:1.2.840.113556.1.4.1941:=(CN =約翰·史密斯,DC = MYDOMAIN,DC = NET))
凡CN =約翰·史密斯,DC = MYDOMAIN,DC = NET是用戶的FDN和可擴展匹配規則1.2.840.113556.1.4.1941。
-jim
嗨吉姆,我不能使用這個,因爲你提到的過濾器似乎只適用於MS AD,而不適用於通用的AD服務器。我的實現需要爲通用LDAP服務器完成 –
是的,它只適用於Microsoft AD服務器。這是從可擴展匹配規則完成的,該規則需要在服務器上可用。微軟已經實施了匹配規則。其他LDAP服務器實現也可以這樣做。我在這裏展示了一些細節。 http://ldapwiki.willeke.com/wiki/1.2.840.113556.1.4.1941 – jwilleke
組在LDAP標準中沒有定義。就LDAP而言,組條目只是LDAP條目。而已。組織支持的實施包括如何處理,查詢,驗證等數據結構如嵌套和動態組,完全取決於目錄軟件供應商。例如,IBM的Tivoli Directory Server(TDS)軟件通過自己的專有對象類和屬性(它們被軟件特別識別),遍歷(用於嵌套組)和擴展(用於動態組)來支持嵌套組和動態組,以驗證成員資格或獲取組結構會自動爲LDAP客戶端完成。例如,TDS提供諸如「ibm-allgroups」和「ibm-allmembers」的操作屬性,以幫助LDAP客戶端在單個搜索中嵌套和動態組中提取組和成員信息。其他目錄供應商以不同方式解決相同問題因此,您的解決方案取決於您使用的LDAP軟件。您可以將應用程序設計爲支持多種目錄服務器軟件,但這取決於您希望在應用程序中使用羣組支持獲得多麼複雜。
我可以想到很少的情況下,這不會鏈回到整個目錄。搜索用戶,獲取組,獲取所有用戶,獲得更多組,獲得更多用戶,獲得更多組。最終擊中管理員並獲得所有用戶。你打算限制這種遞歸嗎? – 2012-12-07 07:28:01
基本上,我對獲取用戶不感興趣。我有興趣提取用戶所屬的嵌套組信息。因此,如果用戶X是組[A,B,C]的一部分,並且組A是D的組D和D的組D的一部分。因此,所有感興趣的對象都是提取用戶組[A,B,C,D ,E]。 –
嗨,如果我打算限制這種遞歸,即如果我現在需要根據說嵌套的水平深度只限制某些用戶集。也就是說,現在我想提取用戶的所有用戶組,直到指定的嵌套深度,例如'3'或'4'。有沒有一種方法可以使用LDAP_RULE_IN_CHAIN做到這一點?它目前正在獲取太多的用戶組,並影響框的性能 –