Страница 1 из 2

Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 16 сен 2010, 12:27
Vladimir Kozak
...
AuthType Basic
AuthName "чужие здесь не ходят"
AuthLDAPURL "ldap://192.168.1.1/o=RogaIKopyta?cn"
require group cn=LitsaPriblizhennyeKImperatoru,o=RogaIKopyta
# require valid-user
...


Вот... вопрос: если есть два юзера cn=Pupkin,ou=Bezdelniki,o=RogaIKopyta и cn=Pupkin,ou=Tuneyadtsy,o=RogaIKopyta, то получаем отлуп:

auth_ldap authenticate: user Pupkin authentication failed; URI / [User is not unique (search found two or more matches)][No such object]

что можно придумать?

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 16 сен 2010, 13:36
capricious
сделать два конфига конфигураций для двух разных контекстов ? :)

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 16 сен 2010, 17:56
Ковалев Артем
Или одного из юзеров переименовать. Почта у них тоже одинаковая, pupkin@rogaikopyta.org ?

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 17 сен 2010, 10:07
Vladimir Kozak
capricious писал(а):сделать два конфига конфигураций для двух разных контекстов ? :)


кстати, надо будет проверить как такую ситуацию отрабатывает Apache+mod_nds на NetWare (которого, к сожалению нет для Linux)

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 17 сен 2010, 10:12
Vladimir Kozak
Ковалев Артем писал(а):Или одного из юзеров переименовать.


Это решение в лоб, сделать "проблемного" юзера уникальным. Но ведь это фича NDS - неуникальность имен в разных ветках :D

Ковалев Артем писал(а):Почта у них тоже одинаковая, pupkin@rogaikopyta.org ?


А при чем тут почта? Юзер логируется в сервисы под именем, а не под е-мейлом, номером пасспорта или еще какой ботвой.

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 17 сен 2010, 16:19
Ковалев Артем
Vladimir Kozak писал(а):
Ковалев Артем писал(а):Почта у них тоже одинаковая, pupkin@rogaikopyta.org ?

А при чем тут почта? Юзер логируется в сервисы под именем, а не под е-мейлом, номером пасспорта или еще какой ботвой.

Ну а имя в почте присваивается на основании логина. По умолчанию login@domen.
При том и почта.

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 17 сен 2010, 18:52
Андрей Тр. aka RH
Vladimir Kozak писал(а):
Вот... вопрос: если есть два юзера cn=Pupkin,ou=Bezdelniki,o=RogaIKopyta и cn=Pupkin,ou=Tuneyadtsy,o=RogaIKopyta, то получаем отлуп:

auth_ldap authenticate: user Pupkin authentication failed; URI / [User is not unique (search found two or more matches)][No such object]

что можно придумать?

Использовать для аутентификации один из ou ( можно даже создать специальный, под это - ou=LitsaPriblizhennyeKImperatoru,o=RogaIKopyta ), в котором насоздавать алиасов для нужных юзеров ? типа cn=Pupkin-Bezdelniki,ou=LitsaPriblizhennyeKImperatoru,o=RogaIKopyta cn=Pupkin-Tuneyadtsy,ou=LitsaPriblizhennyeKImperatoru,o=RogaIKopyta

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 21 сен 2010, 15:37
Vladimir Kozak
Остановился на варианте "если выплывет проблема - переименую одного из юзеров" (например - добавить инициалы).

Перенес рабочий сервер (NetWare+Apache+mod_nds) на новый, как я описал в начале. Начал проверять - и тихо фигею, та же ошибка :shock: Перепроверяю: юзер в дереве - точно уникален. Один, второй, третий... Пошел покурил, подумал, все откатил. Поковырялся и пришел к выводу, что теперь "мешает" объект workstation (юзер+mac) - проверял-то просто на тестовых юзерах, которые без всяких ZEN'овских workstation.

Поскажите пожалуйста, как правильно настроить авторизацию, чтобы "отсеять" workstation'ы? :roll:

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 21 сен 2010, 16:17
Андрей Тр. aka RH
Vladimir Kozak писал(а):Поскажите пожалуйста, как правильно настроить авторизацию, чтобы "отсеять" workstation'ы? :roll:

То есть он что ли ищёт объекты любого типа ? С Апачем в такой ситуации не сталкивался, но вообще при запросах по LDAP можно же указывать тип объекта, типа inetOrgPerson, которым воркстейшены, наверное, не являются.

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 21 сен 2010, 17:26
Vladimir Kozak
Андрей Тр. aka RH писал(а):То есть он что ли ищёт объекты любого типа ?


Вот, получается, что какого-то хрена ws тут (на cn) попадают (3 и 4-я строчки конфига). Группа, а не заремаренный valid-user - потому как все-таки некошерно, чтобы все могли. есть сайты, куда можно определенному кругу лиц. Вот и в группу их и закидываешь. Вроде все просто :)

Андрей Тр. aka RH писал(а):С Апачем в такой ситуации не сталкивался, но вообще при запросах по LDAP можно же указывать тип объекта, типа inetOrgPerson, которым воркстейшены, наверное, не являются.


Так вот как прописать апачу этот фильтр?? :roll:

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 21 сен 2010, 18:34
Бурылов Александр
так мельком просмотрел...., А если их в одну группу поместить а на неё (группу) разрешия в конфиг Апача... (o=рогаИкопыта ведь одинаковый)

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 22 сен 2010, 09:19
Vladimir Kozak
Бурылов Александр писал(а):А если их в одну группу поместить а на неё (группу) разрешия в конфиг Апача...


require group cn=LitsaPriblizhennyeKImperatoru,o=RogaIKopyta :D

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 22 сен 2010, 09:47
Ковалев Артем
Vladimir Kozak писал(а):Поскажите пожалуйста, как правильно настроить авторизацию, чтобы "отсеять" workstation'ы? :roll:

Я тихо фигею...


$mesg = $ldap->search ( base => "l=MSK, c=Ru", filter => "(&(objectclass=user)(cn=*))");
Найдёт всех юзеров. Ещё можно
$mesg = $ldap->search ( base => "l=MSK, c=Ru", filter => "(&(objectclass=user)(cn=*)(loginDisabled=FALSE))");
Найдёт всех не заблокированных юзеров.

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 22 сен 2010, 12:31
Vladimir Kozak
Ковалев Артем писал(а):Я тихо фигею...
$mesg = $ldap->search ( base => "l=MSK, c=Ru", filter => "(&(objectclass=user)(cn=*))");


а я - нет? :D

AuthLDAPURL "ldap://192.168.1.1/o=RogaIKopyta?cn??(objectclass=user) - дает ту же ошибку

Re: Apache+LDAP - одинаковые имена юзеров

СообщениеДобавлено: 22 сен 2010, 14:40
Ковалев Артем
Вот это попробуйте почитать http://php5.kiev.ua/apache/2/mod/mod_au ... uthenphase
У меня авторизация сделана через php или perl-скрипт, кусок из которого я вам и показал.
Как это конкретно пишется для ldap-auth - надо искать.