Указанный домен либо не существует, либо с ним невозможно связаться.

Я пытаюсь использовать класс DomainServices для получения списка подразделений из моей Active Directory.

Вот мой код:

public List<OrganizationalUnit> FindOrganizationalUnits(string domainName, string domainExtension, string parentOrganizationUnit)
{
    string tmpDirectory = String.Format("LDAP://ou={0},dc={1},dc={2}", 
                                            parentOrganizationUnit,
                                            domainName,
                                            domainExtension
    );

    DirectoryEntry directory = new DirectoryEntry(tmpDirectory);

    DirectorySearcher searcher = new DirectorySearcher(directory);
    searcher.Filter = "(objectClass=organizationalUnit)";
    searcher.SearchScope = SearchScope.Subtree;
    searcher.PropertiesToLoad.Add("displayName");

    var organizationalUnits = new List<OrganizationalUnit>();
    foreach (SearchResult result in searcher.FindAll())
    {
        //I just create and return a new OrganizationalUnit object based on the SearchResult result.
        organizationalUnits.Add(new OrganizationalUnit(result));
    }

    return organizationalUnits;
}

Есть ли какая-то конфигурация, которую я должен установить на моем сервере, чтобы я мог использовать DirectoryServices для запроса его объектов AD?

Спасибо за помощь.


person Community    schedule 19.03.2011    source источник
comment
Какая версия Windows является вашим доменом?   -  person ukhardy    schedule 19.03.2011


Ответы (1)


Из какого типа приложения вы запускаете этот код? Запросы AD должны выполняться из аутентифицированного ресурса. Вы можете использовать текущие учетные данные пользователя или передать новое имя / пароль.

У служб обычно нет проблем, они работают под LocalSystem, но если это веб-приложение, работающее со стандартными разрешениями IIS, это может вызвать проблему.

Попробуйте добавить учетные данные там, где вы создаете экземпляр класса DirectoryEntry.

person ChrisW    schedule 19.03.2011
comment
Что касается добавления учетных данных, этот ответ кажется актуальным: stackoverflow.com/questions/5359721/ - person Argalatyr; 19.03.2011