C# Active Directory - неверное имя пользователя и пароль, но данные верны - PullRequest
0 голосов
/ 16 апреля 2020

Проблема с Active Directory & C#. Я получаю неустойчивую ошибку, утверждающую, что «Неверное имя пользователя или пароль». Тем не менее, я знаю, что данные для входа верны, так как он работает локально в VS. Это, похоже, не на веб-сервере каждый раз.

Ошибка:

The user name or password is incorrect.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.DirectoryServices.DirectoryServicesCOMException: The user name or password is incorrect.

Мой код для хранения соединения с LDAP, биты скрыты по соображениям безопасности:

    public static DirectoryEntry GetDirectoryEntryWithGc()
    {
        var de = new DirectoryEntry("GC://dc=TEXT,dc=TEXT,dc=TEXT");
        de.AuthenticationType = AuthenticationTypes.Secure;
        de.Username = "USERNAME";
        de.Password = "PASSWORD";
        return de;
    }

Как уже упоминалось Работает локально и периодически. У кого-нибудь есть опыт?

1 Ответ

1 голос
/ 16 апреля 2020

Это только предположение, но есть ли в вашем лесу AD более одного домена? И включаете ли вы имя домена в "USERNAME" (то есть "DOMAIN\USERNAME")?

Использование GC:// без указания имени сервера может подключаться к серверу из любого домена в вашем лесу. Если вы не указали имя домена в своем имени пользователя, оно будет предполагать, что имя пользователя принадлежит домену сервера, что может быть не так.

Если я прав в этом, вы можете решить выдача путем включения доменного имени с именем пользователя:

de.Username = "DOMAIN\USERNAME";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...