簡體   English   中英

Active Directory過濾PHP

[英]Active Directory Filter PHP

我正在嘗試使用PHP獲取我的活動目錄聯系人,這是域:`'OU = Shop,OU = US,OU = test,DC = com,DC = def,DC = intra'。

但是,我有12個國家需要搜索,所以我不需要'美國'來搜索'FRA''英國',...我只需要'商店'OU中的聯系人,我嘗試了一些東西像這樣,但搜索過濾器錯誤: OU=Shop,OU=*,OU=test,DC=com,DC=def,DC=intra

那么我如何制作一個類似的搜索過濾器,只返回每個國家的商店?

簡短的回答是,您無法使用DN創建搜索過濾器 - 這只是搜索“root”,即搜索從下開始的位置。

用SQL術語來思考它:搜索不同的DN上下文就像在不同的表中搜索聯系人,每個國家一個。 在這種情況下,使用SQL您必須指定每個表: select * from US,MX,ES,...

在LDAP中,您必須找到聯系對象共享的屬性 有點像

(&(objectclass=contact)(description=shop))

或者在你的情況下,只需objectclass=contact就足夠了。

如果在將聯系人唯一標識為一個群組的屬性中沒有相似之處,那么您就不走運了。

就像@mvrejin說的那樣,你無法以這種方式創建搜索過濾器,我建議將你正在談論的那些聯系人或商店添加到某個組(例如Shops_)並在搜索過濾器中添加該組,如下所示:

$search_filter = '(&(objectCategory=person)(memberOf=cn=Shops_,ou=something,DC=com,DC=def,DC=intra))';

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM