Я пытаюсь сделать то, что описывает тема, и мой код пока:
DirectoryEntry directoryEntry = new DirectoryEntry("LDAP://myDomain/DC=somecollege, DC=someState, DC=edu", myUser, myPassword);
DirectorySearcher directorySearcher = new DirectorySearcher(directoryEntry);
directorySearcher.Filter = "(&(objectCategory=Person))";
SearchResultCollection searchResult = directorySearcher.FindAll();
foreach (SearchResult srUSers in searchResult)
{
DirectoryEntry de = srUsers.GetDirectoryEntry();
lbSiteOwnerGroups.Items.Addd(New ListItem(de.Name.ToString()));
}
С этим кодом все люди привязываются к выпадающему меню, но формат:
CN = lastName firstName
Как я могу получить только имена, а не "CN =", я предполагаю, что вам не нужно манипулировать строками здесь.
Если я попытаюсь с de.Path.Tostring (), это будет выглядеть так:
<option value="LDAP://myDomain/CN=DOE John, OU=IT, OU=_someville_NonTeaching, OU=Staff_someville, DC=somecollege, DC=nsw, DC=edu,DC=au">LDAP://myDomain/CN=DOE John, OU=IT, OU=Staff_someville_NonTeaching, OU=Staff_someville, DC=somecollege, DC=fl, DC=edu,DC=com<option>
Я видел, что я могу использовать de.Properties ["mail"]. ToString () например, но выдает ошибку "оператор вернул ошибку". Я не работал с AD раньше, и я, если я свяжусь с администратором AD, какие вопросы я должен задать ему, если вопросы, которые у меня есть, требуют ответа от фактического администратора?
Кроме того, существует поддомен или дочерний домен, который называется Staff. Как я могу получить пользователей только из этого домена?
Заранее спасибо.