Узнать полный путь LDAP по пользователю - C#
Формулировка задачи:
Известно имя доменного пользователя, например Ivan.Ivanov как узнать полный путь к этой записи например в таком виде
"LDAP://OU=Buhgalteriya,OU=Users,OU=Office,DC=ad,DC=local"
Решение задачи: «Узнать полный путь LDAP по пользователю»
textual
Листинг программы
string adPath = "LDAP://domaincontroller/DC=yourdomain,DC=com";
string filter = string.Format("(&(objectClass=user)(objectCategory=person)(sAMAccountName={0}))", Environment.UserName);
DirectoryEntry de = new DirectoryEntry(adPath);
// При необходимости указываем логин и пароль для доступа к домену
//de.Username = "DOMAIN\\User";
//de.Password = "password";
de.AuthenticationType = AuthenticationTypes.Secure;
DirectorySearcher ds = new DirectorySearcher(de, filter, new string[]{"distinguishedName"});
SearchResult sr = ds.FindOne();
if(sr != null)
{
string distinguishedName = sr.Properties["distinguishedName"][0].ToString();
}