Проблема входа в Active Directory - PullRequest
0 голосов
/ 23 июля 2010

У меня есть 2 пользователя в моей установке AD с тем же CN

   CN=jack,CN=Users,DC=xyz,DC=com and 
   CN=jack,OU=abc,DC=xyz,DC=com

Когда я пытаюсь пройти аутентификацию на сервере AD с помощью клиента Apache Directory Studio и предоставляю следующие учетные данные

User: jack
Password: <password>

аутентификация не пройдена. Следующие полномочия работают

User: CN=jack,CN=Users,DC=xyz,DC=com
Passwprd: <password>

Когда у меня есть только один пользователь CN=tom,DC=xyz,DC=com с данным CN

Я могу войти с помощью

User: tom
Password: <password>

без указания полного DN (CN=tom,DC=xyz,DC=com).

Мне нужно написать модуль для проверки подлинности пользователей при установке AD. У меня есть только имена пользователей и пароли, а не полные BASE DN. Я не могу привязаться к серверу AD, чтобы иметь возможность использовать фильтры, такие как (&(objectCategory=person)(objectClass=user)(sAMAccountName=jack)). Как это сделать, если проблема возникает, когда несколько пользователей имеют один и тот же CN?

РЕДАКТИРОВАТЬ : Можно ли настроить сервер AD для привязки к почтовому адресу / sAMAccountName пользователей вместо CN? Это решило бы мою проблему, поскольку они уникальны, в то время как CN не

Ответы [ 2 ]

2 голосов
/ 24 июля 2010

Я нашел атрибут, который искал -> userPrincipalName (UPN). Это имеет уникальное значение в Active Directory и может быть указано как имя пользователя при попытке аутентификации. Так что теперь мне нужен список UPN и соответствующие пароли для входа в систему.

Отметьте здесь тоже.

0 голосов
/ 23 июля 2010

Какой логин вы делаете в своем «модуле»? Если вы не можете связать и выполнить запрос ldap, то с каким интерфейсом вы входите в систему? Вам нужно настроить все, что нужно для использования sAMAccountName, поскольку это единственное гарантированное уникальное имя для каждого доменного имени. Конечно, если у вас есть несколько доменов в лесу, они должны быть уникальными для каждого домена, так что это может работать не так хорошо.

Если вы можете выполнять привязку LDAP только как пользователь, а не выполнять запрос. Возможно, вы можете попытаться подключиться как sAMAccountname = jack при передаче учетных данных.

...