Я использую приложение C # для аутентификации и проверки пользователя Active Directory, который находится на 64-битном сервере Windows 2008.
Мне удалось успешно аутентифицировать пользователя при вводе имени пользователя и пароля с использованием следующего кода: Мое значение domainName - rootforest.com, а мое userName - admin6
UserPrincipal usr;
PrincipalContext ad;
//Enter Active Directory settings
ad = new PrincipalContext(ContextType.Domain, domainName,usrName,pswd);
//search user
usr = new UserPrincipal(ad);
usr.SamAccountName = usrName;
PrincipalSearcher search = new PrincipalSearcher(usr);
usr = (UserPrincipal)search.FindOne();
search.Dispose();
В другой функции, где я хочу проверить, существует ли пользователь 'admin6' и у меня нет пароля, но когда я проверяю его, функция выдает «Ошибка входа в систему: неизвестное имя пользователя или неверный пароль. \ R \ n ». Код, который я использовал, был практически идентичен приведенному выше, за исключением этой строки:
//Enter Active Directory settings
ad = new PrincipalContext(ContextType.Domain, domainName);
Имея это не работает, я пробовал другой код, который я нашел в Интернете, но все они дают мне ту же ошибку. Я начал думать, что это может быть, как я настраивал свой домен Active Directory?
На рисунке ниже показано, как выглядит мой домен:
https://picasaweb.google.com/100922945973553878191/ActiveDirectory?authuser=0&feat=directlink
Может ли кто-нибудь помочь мне с этим? Я застрял с этой проблемой в течение последнего дня или около того, и я не могу понять, почему. Если у вас есть какие-то коды, я могу попробовать, было бы замечательно