Add ADSI Edit at Windows Server 2003 for find attribute user from AD
Berikut ini adalah cara saya mendapatkan suatu nilai attribute dari AD dengan menggunakan C#..
Saya mencari hal ini di karenakan code C# saya tidak bisa mencari email berdasarkan filter berdasarkan user logon (format CN = userLogin) , bisanya menggunakan CN = Full Username.
Karena itu saya ingin mengganti CN --> dengan sesuatu attribute (yg saya masih belum tau)
beruntungnya saya di bantu oleh Pak Heribertu untuk mencari attibute apa yg beaiknya saya pakai di code saya ^^
Begin Code
private string GetEmailFromAD(string employeesName)
{
string Email = string.Empty;
string cleanUserName = CleanUserNameFromDomain(employeesName);//employeesName.Substring(employeesName.LastIndexOf('\\') + 1);DirectoryEntry adFolderObject = new DirectoryEntry();
DirectorySearcher adSearcherObject = new DirectorySearcher(adFolderObject);adSearcherObject.SearchScope = SearchScope.Subtree;
adSearcherObject.Filter =
"(sAMAccountName=" + cleanUserName + ")";SearchResult adObject = null;adObject = adSearcherObject.FindOne();
Email = adObject.Properties[
"mail"][0].ToString();return Email;
}
End Code
Dengan mendownload dari :
http://computerperformance.co.uk/w2k3/utilities/adsi_edit.htm
akan di dapatkan adsiedit.dll, dengan menaruhnya di C:\WINDOWS\system32
dan di run - cmd , mengetikkan regsvr32 adsiedit
maka kita dapat menjalankan adsiedit.msc , Expand ADS Edit - Domain - DC .. - CN = Users , maka dapat di lihat list user yang bisa di lihat semua attributenya dengan klik kanan -properties.. ^^

Dari sini saya bisa melihat Attribute sAMAccountName , attributenya bisa saya pakai untuk search mail seperti code di atas :)
another reference :
http://technet.microsoft.com/en-us/library/bb124152(EXCHG.65).aspx