我正在使用ADLDAP庫(http://adldap.sourceforge.net)與Active Directory進行交互。我正在使用PHP。我想從Active Directory中獲取所有用戶並將它們保存到數組中。有沒有辦法做到這一點?使用ADLDAP從Active Directory加載用戶
2
A
回答
5
你可能想這樣做:
$adldap = new adLDAP();
$usernames = $adldap->user()->all();
$users = array();
foreach ($usernames as $username)
{
$userInfo = $adldap->user()->infoCollection($username);
$users[$username] = $userInfo;
}
all()
方法是。
1
假設目錄管理員將允許LDAP客戶端應用程序檢索 目錄中的所有條目,請從根 DSE中提取屬性namingContexts
的值。該屬性的值(它是多值的)是該服務器支持的命名上下文或後綴。利用該信息,使用構建一個搜索:
- 命名上下文
- 大小限制0F 0(無的sizeLimit)
- 的0(無限制時間)的時間限制
- 一個過濾器,將匹配所有條目,例如,
(objectClass=*)
或(&)
- 一個範圍足以發現所有條目,大概
subtree
- 屬性的列表中選擇所需
針對每個namingContext
構建搜索。同樣,假設目錄 管理員將允許LDAP客戶端搜索整個目錄,這些搜索將導致包含每個條目的響應。
有很多注意事項,如:
- 這是由管理員允許?
- 您的應用程序可以增長到足以處理數據(如果不是簡單尋呼結果 機制可能提供解決方案)。
- 我被告知AD在LDAP客戶端上施加了1000的大小限制。即使這是真的, 也不應該使用目錄基礎設施或供應商的知識對LDAP客戶端進行編碼。做 這樣會導致難以維護的糟糕脆弱的代碼。所有的LDAP客戶端必須編碼爲 ,以達到IETF的LDAP理事會規定的標準。
欲瞭解更多信息,請參見:
+0
對不起,但我不明白。 我正在尋找一種方法來從AD獲取所有AD用戶,並使用PHP將它們存儲到數組中。 – pangi 2012-03-10 11:26:39
相關問題
- 1. 使用Powershell更新Active Directory中的Active Directory用戶屬性
- 2. 將用戶從Active Directory加載到Rails 3.1 Active Record數據庫中
- 3. 使用Rails的Active Directory用戶聯合?
- 4. ASP.NET MVC5 - 使用Active Directory用戶的DropDownList
- 5. 使用Zend Framework創建Active Directory用戶
- 6. 使用JNDI啓用Active Directory帳戶
- 7. Active Directory添加用戶屬性
- 8. 將用戶添加到Active Directory
- 9. 在Active Directory中添加新用戶
- 10. C#將用戶添加到Active Directory
- 11. 將用戶從WSO2IS提供到Active Directory
- 12. 從Active Directory組中刪除用戶
- 13. 從DMZ訪問Active Directory用戶組
- 14. 從Active Directory獲取已啓用帳戶
- 15. 從Active Directory導入和導出用戶
- 16. 從CSV/Excel導入用戶到Active Directory
- 17. 從Active Directory讀取用戶授權組
- 18. 從Active Directory檢索用戶憑據
- 19. 從Active Directory PrincipalContext獲取所有用戶
- 20. 從Active Directory中查找用戶的域
- 21. 從Active Directory組獲取用戶
- 22. 從Active Directory獲取所有用戶?
- 23. 計數Active Directory用戶
- 24. Active Directory用戶檢查
- 25. Umbraco Active Directory創建用戶
- 26. Azure Active Directory圖Api - 用戶
- 27. Active Directory用戶列表
- 28. 驗證Active Directory用戶
- 29. 使用OWIN Active Directory承載令牌啓用多個租戶
- 30. 使用用戶名使用UnboundID驗證Active Directory用戶
有沒有辦法讓只有活躍(不是禁用)的用戶? – Sirber 2012-09-05 19:05:48
@Sirber:'all()'方法需要'$ search'參數,我相信這個參數可以用來過濾列表。它應該是我認爲的常規LDAP過濾器。或者你可以在'enabled'屬性的'for'循環中過濾結果。 – 2012-10-19 15:13:14