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

exim, авторизация по логину

Добавлено: 2010-02-18 8:56:03
mixnn
Возможно ли настроить exim что бы в нем можно было авторизироваться как по "login@domen" так и "login". Если да, подскажите как сделать?

Re: exim, авторизация по логину

Добавлено: 2010-02-18 9:04:29
Alex Keda
нарисовать соответствующий аутентификатор

Re: exim, авторизация по логину

Добавлено: 2010-02-18 9:28:24
mixnn
lissyara писал(а):нарисовать соответствующий аутентификатор
у меня сейчас так

Код: Выделить всё

begin authenticators

lookup_cram:
        driver = cram_md5
        public_name = CRAM-MD5
        server_secret = ${lookup mysql {select password from accounts where login='$1'}{$value}fail}
        server_set_id = $1
login:
        driver = plaintext
        public_name = LOGIN
        server_prompts = Username:: : Password::
        server_condition = ${lookup mysql {select login from accounts where login='$1' and password='$2'}{yes}{no}}
        server_set_id = $1
если сделать так, то будет верно или я не так понял?
в login2 будет храниться сам логинт

Код: Выделить всё

login2:
        driver = plaintext
        public_name = LOGIN
        server_prompts = Username:: : Password::
        server_condition = ${lookup mysql {select login2 from accounts where login2='$1' and password='$2'}{yes}{no}}
        server_set_id = $1

Re: exim, авторизация по логину

Добавлено: 2010-02-18 18:33:34
dikens3
Обычно проверка пароля выглядит так:
1. Выбрать все записи из MYSQL в которых логин равен ЛОГИН и пароль равен ПАРОЛЬ.
Если есть хоть одна строка, тогда всё путём.

Ваш вариант звучит так:
2. Выбрать все записи из MYSQL в которых логин равен (ЛОГИН или ЛОГИН@ДОМЕН) и пароль равен ПАРОЛЬ.

Re: exim, авторизация по логину

Добавлено: 2010-02-19 11:52:25
mixnn
у меня сейчас запрос

Код: Выделить всё

select password from accounts where login='$1'
у меня в я чейчке login почта в формате "логин@домен.ру" в login2 "логин"
какую переменную нужно поставить в запрос?

Код: Выделить всё

select password from accounts where login='$1' OR login2 = '???' 

Re: exim, авторизация по логину

Добавлено: 2010-02-19 15:49:29
dikens3
у меня в я чейчке login почта в формате "логин@домен.ру" в login2 "логин"
какую переменную нужно поставить в запрос?
Вы спросили как, вам ответили. Делать за Вас нет никакого желания. Всего хорошего.

Вот я такую изучал, ооочень рекомендую.
http://www.ozon.ru/context/detail/id/2639147/

Re: exim, авторизация по логину

Добавлено: 2010-03-01 6:05:03
save_our_souls
я сделал так

Код: Выделить всё

password_query = SELECT `username` as `user`, `password` FROM  \
`mailbox` WHERE `username` = '%n@[b]domain.ru[/b]' AND `active`='1'
при авторизации воожу только логин, только для smtp все равно надо вводить user@domain.ru. конечно не знаю насколько это правильно, но у меня работает.