Bug 4821 - Проблема saslauthd и LDAP
Summary: Проблема saslauthd и LDAP
Status: CLOSED NOTABUG
Alias: None
Product: Sisyphus
Classification: Development
Component: cyrus-sasl2 (show other bugs)
Version: unstable
Hardware: all Linux
: P2 major
Assignee: Alexei Takaseev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-07-17 11:13 MSD by Dmitry Lebkov
Modified: 2005-07-13 15:46 MSD (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Dmitry Lebkov 2004-07-17 11:13:20 MSD
Для нормальной авторизации пользователей с помощью связки saslauthd+LDAP в файл
/etc/sasl2/saslauthd.conf необходимо добавить параметр:
ldap_size_limit: 0

Этот параметр задает ограничение на кол-во найденных записей в каталоге LDAP.
Без него (или если он равен 1) saslauthd не может авторизовать пользователя.
В логах следующее:

saslauthd[24012]: user ldap_search_st() failed: Size limit exceeded

Проблема в том, что при чтении конфига saslauthd, этим параметрам не
присваивается значение по-умолчанию, в случае если данные параметры не
найдены в файле конфигурации.
Comment 1 Alexei Takaseev 2004-07-17 11:48:05 MSD
Это очень странно, но значение ldap_size_limit выставляется по-умолчанию в 1.

И, кстати, я не совсем понимаю ситуацию, когда на запрос по авторизации
пользователя получение из базы нескольких записей есть явление изначально
верное. Может все-таки стоит пересмотреть параметр запроса, чтобы результат был
безусловно одним?
Comment 2 Dmitry Lebkov 2004-07-17 13:46:59 MSD
Результат запроса на авторизацию безусловно один, т.к. в тестовом LDAP-каталоге
только _одна_ одна учетная запись. И в логах slapd видно, что возвращается только
одна найденная запись. Но (!) если в конфиге saslauthd либо отсутствует
ldap_size_limit, либо он принудительно установлен в 1 - получаю описанную мной
ситуацию. :( Если выставлять этот параметр либо в 0 либо во что-то > 1 - всё
работает, как должно.
Comment 3 Alexei Takaseev 2004-09-01 14:45:28 MSD
Немного прояснилась ситуация с данной проблемой. Отлуп происходит в том случае,
что для данной учетной записи имеются несколько полей mail, отвечающим запросу.
То есть, если имеется записи

mail: user
mail: user@domain.ru

то, в результате запроса обе эти записи могут быть вернуты как результат.
Все-таки это проблема неправильной политики аутентификации пользователей.
Comment 4 Dmitry Lebkov 2004-09-02 04:23:18 MSD
(In reply to comment #3)
> Немного прояснилась ситуация с данной проблемой. Отлуп происходит в том
> случае,что для данной учетной записи имеются несколько полей mail,
> отвечающим запросу.
> То есть, если имеется записи
> 
> mail: user
> mail: user@domain.ru
> 
> то, в результате запроса обе эти записи могут быть вернуты как результат.
> Все-таки это проблема неправильной политики аутентификации пользователей.

На версия 2.1.19-alt1 ни сама ошибка, ни вышеописанное поведение не
воспроизводится. Всё работает как часы не зависимо от параметра ldap_size_limit
и количества атрибутов mail у объекта. Закрываю данный bug.