Я пытаюсь выполнить аутентификацию пользователя с помощью LDAP, используя приведенный ниже код.PrincipalContext ValidateCredentials вызывает ошибки
using (PrincipalContext context = new PrincipalContext(ContextType.Domain, ldap, "username", "password"))
{
bool success = context.ValidateCredentials(useralias, password);
}
Когда я использую LDAP в качестве "LDAP: // zyorg: 389/Я получаю, как ошибка говоря "". При инициализации PrincipalContext
Если я использую LDAP, как" Не удается связаться с сервером zyorg : 389/«Успешно это происходит, если я использую правильные учетные данные, но я вижу два исключения в« IntelliTrace », говорящие:« Сервер LDAP недоступен », когда выполняется ValidateCredentails. Если я поставлю неверные учетные данные для этого метод, если получить ложь, но все же получить те же исключения, записанные в «IntelliTrace».
Любые указатели для решения проблемы или отладки на то, что происходит на высоко оценены.
Может помочь http://stackoverflow.com/questions/11561689/using-c-sharp-to-authenticate-user-against-ldap – Nalaka
Работает ли ваш код на одном сервере? Если вы не выполняете аутентификацию по незащищенному порту. Если вы не установили 'SSL', сделайте это, иначе, если вы это сделаете, вам нужно переключить порт на' 636'. – smr5
Мне любопытно, если вы когда-нибудь нашли причину этой ошибки. В настоящее время я испытываю ту же проблему, в которой 'ValidateCredentials' будет работать (возвращает true или false правильно), но я получаю, что сервер LDAP является недоступным исключением, которое поймано и выбрано внутри вызова. –