我想使用PHP獲取我的活動目錄聯繫人,這是域:``OU = Shop,OU = US,OU = test,DC = com,DC = def,DC = intra' 。我需要搜索'FRA''英國',... &我只需要在'商店'OU中的聯繫人,我試過這樣的事情,但它的搜索過濾器是錯誤的:OU=Shop,OU=*,OU=test,DC=com,DC=def,DC=intra
。活動目錄過濾器PHP
所以我怎樣才能做出一個類似的搜索過濾器,只返回每個國家的商店?
我想使用PHP獲取我的活動目錄聯繫人,這是域:``OU = Shop,OU = US,OU = test,DC = com,DC = def,DC = intra' 。我需要搜索'FRA''英國',... &我只需要在'商店'OU中的聯繫人,我試過這樣的事情,但它的搜索過濾器是錯誤的:OU=Shop,OU=*,OU=test,DC=com,DC=def,DC=intra
。活動目錄過濾器PHP
所以我怎樣才能做出一個類似的搜索過濾器,只返回每個國家的商店?
像@ mvrejin說的那樣,你不能以這種方式創建搜索過濾器,我會建議將你正在討論的聯繫人或商店添加到某個組中(例如Shops_),並在搜索過濾器中添加該組, :
$search_filter = '(&(objectCategory=person)(memberOf=cn=Shops_,ou=something,DC=com,DC=def,DC=intra))';
簡而言之,您無法使用DN創建搜索過濾器 - 這只是搜索「根」,即搜索向下開始的位置。
可以這樣認爲它是SQL語句:搜索不同的DN上下文就像在不同的表中搜索聯繫人,每個國家一個。在這種情況下,使用SQL您必須指定每個表:select * from US,MX,ES,...
。
在LDAP中,您將必須找到聯繫人對象共享的屬性。東西沿線
(&(objectclass=contact)(description=shop))
或者也許在你的情況下只需objectclass=contact
就足夠了。
如果在屬性中沒有將您的聯繫人作爲一個組唯一標識的相似性,那麼您運氣不好。