C # ActiveDirectory продолжает возвращать false.Зачем? - PullRequest
0 голосов
/ 15 февраля 2012

Я знаю имя моей учетной записи и пароль. Я могу войти на любой ПК в домене.

Console.WriteLine("User Name: " + userName + " Password: " + tb.Text.ToString().Trim());
System.DirectoryServices.AccountManagement.PrincipalContext pc = new System.DirectoryServices.AccountManagement.PrincipalContext(ContextType.Domain, "DOMAIN.TLD");                

// validate the credentials 
bool validatedOnDomain = pc.ValidateCredentials(userName, tb.Text.ToString().Trim());
return validatedOnDomain;

Этот метод продолжает возвращать false.

Я что-то здесь не так делаю? Я также знаю, какой у меня пароль. Любая помощь будет отличной!

tb -> TextBox, где вводится пароль. Я удаляю все пробелы и урезаю его (на случай, если пользователь испортит)

1 Ответ

1 голос
/ 15 февраля 2012

Можете ли вы попробовать это:

bool validatedOnDomain = pc.ValidateCredentials(userName, tb.Text.ToString().Trim(), ContextOptions.Negotiate); 

Вам просто нужно указать параметры, которые используются для привязки к серверу.

...