從Active Directory 擷取使用者資訊
作為Active Directory 的新手,了解其分層資料儲存機制和LDAP 查詢功能至關重要。
使用System.DirectoryServices.AccountManagement中的PrincipalSearcher,可以有效地檢索使用者資訊。下面提供了一個範例:
using (var context = new PrincipalContext(ContextType.Domain, "yourdomain.com")) { using (var searcher = new PrincipalSearcher(new UserPrincipal(context))) { foreach (var result in searcher.FindAll()) { DirectoryEntry de = result.GetUnderlyingObject() as DirectoryEntry; Console.WriteLine("First Name: " + de.Properties["givenName"].Value); Console.WriteLine("Last Name : " + de.Properties["sn"].Value); Console.WriteLine("SAM account name : " + de.Properties["samAccountName"].Value); Console.WriteLine("User principal name: " + de.Properties["userPrincipalName"].Value); Console.WriteLine(); } } } Console.ReadLine();
「givenName」等屬性提供名字,「sn」提供姓氏,「samAccountName」是Windows 2000 之前的使用者登入名,「userPrincipalName」通常在Windows 2000 之後使用。
以上是如何使用 C# 有效率地從 Active Directory 檢索使用者資訊?的詳細內容。更多資訊請關注PHP中文網其他相關文章!