搜尋 Active Directory
Active Directory 的重要功能是解析人員的數據查詢,以及計算機和服務設定數據。 若要為 Active Directory 撰寫有效率的查詢,請務必熟悉下列事項:
- 判斷查詢的範圍:客戶端必須尋找可能位於樹系內之任何位置的物件屬性,或只位於一個網域內,或位於指定組織單位 (OU)內的物件?
- 判斷查詢的深度:查詢必須只搜尋一個層級,還是可能交叉到其他LDAP目錄?
- 效能和處理大型結果集:客戶端應該如何有效地處理大型結果集的潛力?
- 判斷最佳查詢:哪種類型的查詢可提供最有效率的結果? 開發人員應該避免哪種類型的查詢?
- 了解查詢語法:ADSI 支援 RFC 2254 以及 SQL 子集中所述的 LDAP 語法。
- 介面的選擇:ADSI 同時提供 OLE DB 支援,以及稱為 IDirectorySearch 的 C/C++ 介面。 由於 ADSI 適用於多個命名空間,因此您可以使用這些介面來查詢其他命名空間,例如 Exchange,以及 Active Directory。 因為 ActiveX Data Object (ADO) 是 OLE DB 之上的簡單可編寫腳本的數據存取物件模型,因此 OLE DB 介面適用於 Visual Basic 程式設計人員和網頁腳本寫入器。 Visual Studio 中新的數據存取功能,以及利用 ADO 和 OLE DB 的 Office 應用程式 數據,現在可以使用與從其他 OLE DB 提供者存取數據相同的方式來存取 Active Directory 數據,例如 SQL Server。 不過,如果 C/C++ 開發人員必須執行簡單的目錄搜尋, IDirectorySearch 介面可能比 OLE DB 介面更合適。
下列主題說明如何搜尋 Active Directory,以確保您的應用程式在用戶端需求下發出最有效率的查詢: