AD облегченные службы каталогов не аутентифицируют пользователей - PullRequest
1 голос
/ 07 сентября 2010

По некоторым причинам я не могу аутентифицировать учетные данные пользователя с использованием LDS для пользователей, созданных в LDS.

Мой тестовый код:

        PrincipalContext context = new PrincipalContext(ContextType.ApplicationDirectory, "adlds:50000", "CN=test,DC=test,DC=internal", ContextOptions.Negotiate);

        UserPrincipal user = new UserPrincipal(context);

        user.Enabled = true;
        user.Name = "MyTestUser";
        user.SetPassword("P@ssw0rd1");
        user.GivenName = "ATestUser123";
        user.Surname = "SurnameOf";

        user.Save();

        bool auth = context.ValidateCredentials("MyTestUser", "P@ssw0rd1");

ValidateCredentials каждый раз возвращает false.

LDS работает на Server 2008 R2, к которому присоединен домен. Я пытался воссоздать контекст, срок действия паролей, ручной сброс паролей через ADSI и т. Д.

Есть мысли?

1 Ответ

4 голосов
/ 07 июля 2011

Я столкнулся с той же проблемой.Что я сделал и работает для меня, так это то, что при вызове ValidateCredentials я немного изменил имя пользователя:

bool auth = context.ValidateCredentials(
                            String.Format("CN={0},CN=test,DC=test,DC=internal",
                                          "MyTestUser"), 
                            "P@ssw0rd1");

Надеюсь, это поможет.

...