The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  правила/FAQ  поиск  регистрация  вход/выход  слежка  RSS
"dovecot и два разных пароля на разное содержимое"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на сервере (Почта / Linux)
Изначальное сообщение [ Отслеживать ]

"dovecot и два разных пароля на разное содержимое"  –1 +/
Сообщение от fevil email(??) on 16-Мрт-17, 11:00 
Давайте поразмышляем каким образом в dovecot либо другом imap-сервере можно реализовать механизм, когда на один почтовый ящик есть два пароля. При входе по одному доступно содержимое стандартных подписанных папок, а при входе под другим появляются дополнительные папки.
Вопрос делиться как бы на две задачи. Каким образом реализовать схему авторизации, тут надо реализовать некий алгоритм привязки пользователя к уникальному id и в зависимости от пароля перейти к след задаче.
А вторая задача каким образом можно скрывать папки. Пока вижу только способ выполнять post-login сценарий который в зависимости от метки авторизации меняет например права на файловой системе, что повлечет недоступность части папок, но тут скорее всего почтовый клиент будет ругаться на ошибки.
У кого есть какие мысли поделитесь пожалуйста.
Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "dovecot и два разных пароля на разное содержимое"  –1 +/
Сообщение от omnomnin on 16-Мрт-17, 15:46 
> У кого есть какие мысли поделитесь пожалуйста.

берёте сырцы довекота, гцц и ваш любимый текстовый редактор и впиливаете сей изврат


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от fevil email(??) on 16-Мрт-17, 16:07 
> берёте сырцы довекота, гцц и ваш любимый текстовый редактор и впиливаете сей
> изврат

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

passdb {
описание одного соответствия login/password
}

passdb {
описание второго соответствия login/password
}


userdb {
******
}


теперь могу логинится либо под одним паролем либо под другим, но вот как передавать разный mail_location и  mail_home остается вопросом.

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "dovecot и два разных пароля на разное содержимое"  +1 +/
Сообщение от PavelR (??) on 16-Мрт-17, 18:37 
> теперь могу логинится либо под одним паролем либо под другим, но вот
> как передавать разный mail_location и  mail_home остается вопросом.

посмотрите на этот пример:

user_query = SELECT CONCAT('/var/spool/postfix/virtual/',maildir) AS home, '125' AS uid, '125' AS gid, \
  CASE '%s' WHEN 'pop3' THEN 'no' ELSE 'yes' END AS 'userdb_namespace/inbox/inbox', \
  CASE '%s' WHEN 'pop3' THEN 'yes' ELSE 'no' END AS 'userdb_namespace/virtualpop3/inbox' \
  FROM mailbox WHERE username = '%u';


и сделайте то, что вам нужно.

Ответить | Правка | ^ к родителю #2 | Наверх | Cообщить модератору

4. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от fevil email(??) on 17-Мрт-17, 08:47 
это уже ближе и  справедливо для случая когда один пароль для imap, второй пароль для pop3,
в моем случае оба пользователя заходят по imap. '%s' в обоих случаях будет == imap.

Вроде как в моем случае должен работать вариант  

userdb {
  driver = prefetch
}

и в запросах описанных в passdb передавать 'mail' и 'home', но либо я не верно понял
либо ошибаюсь mail_location не переопределяется. Пока думаю как передать параметр из passdb в userdb ...

Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

9. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от fevil email(??) on 17-Мрт-17, 16:10 
задача решена!!! переменная %{userdb:mail}
Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

11. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от PavelR (??) on 17-Мрт-17, 16:43 
>[оверквотинг удален]
> в моем случае оба пользователя заходят по imap. '%s' в обоих случаях
> будет == imap.
> Вроде как в моем случае должен работать вариант
> userdb {
>   driver = prefetch
> }
> и в запросах описанных в passdb передавать 'mail' и 'home', но либо
> я не верно понял
> либо ошибаюсь mail_location не переопределяется. Пока думаю как передать параметр из passdb
> в userdb ...

Так не обязательно %s использовать и в вашем случае вообще не нужно.
Условие можно проверять по любой переменной, либо можно вообще не проверять, а в базе в отдельном поле хранить нужные данные.

Решена - и ладно )

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

12. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от fevil email(??) on 17-Мрт-17, 16:48 
я именно застрял в поисках переменной в которой передать нужный путь, поэтому акцентировал на %s. В документации немного расплывчато описаны переменные.
спасибо за помощь.

Ответить | Правка | ^ к родителю #11 | Наверх | Cообщить модератору

5. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от XAnder (ok) on 17-Мрт-17, 09:13 
> У кого есть какие мысли поделитесь пожалуйста.

Мысль насчёт альтернативного решения: сделать второго пользователя и в его ящик (maildir) накидать символических ссылок на каталоги первого пользователя кроме тех, которые нужно скрыть.

Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

6. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от fevil email(??) on 17-Мрт-17, 10:27 
решение имеет право на жизнь, но опять же, задача чтобы пользователь был один.
Тут цель средствами почты  некий хелпдеск сделать, есть дневная смена и ночная и у каждого свои задачи, но логин один должен быть с разными паролями.

Ответить | Правка | ^ к родителю #5 | Наверх | Cообщить модератору

7. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от Тихомиров on 17-Мрт-17, 11:21 
> решение имеет право на жизнь, но опять же, задача чтобы пользователь был
> один.
> Тут цель средствами почты  некий хелпдеск сделать, есть дневная смена и
> ночная и у каждого свои задачи, но логин один должен быть
> с разными паролями.

не проще ли тогда кроном менять содержимое ящика?

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

8. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от fevil email(??) on 17-Мрт-17, 11:48 
> не проще ли тогда кроном менять содержимое ящика?

проще, но теряется возможность просмотреть "свой" ящик в неурочное время.

Ответить | Правка | ^ к родителю #7 | Наверх | Cообщить модератору

14. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от PavelR (??) on 21-Мрт-17, 08:29 
>> не проще ли тогда кроном менять содержимое ящика?
> проще, но теряется возможность просмотреть "свой" ящик в неурочное время.

Можно сделать два ящика с постоянным содержимым и один ящик, у которого каталог задается переключаемым симлинком.

Ответить | Правка | ^ к родителю #8 | Наверх | Cообщить модератору

10. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от fevil email(??) on 17-Мрт-17, 16:12 
все задача решена, локейшин передается через %{userdb:mail}
Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

13. "dovecot и два разных пароля на разное содержимое"  +/
Сообщение от Жора (??) on 18-Мрт-17, 16:20 
> все задача решена, локейшин передается через %{userdb:mail}

Опубликуйте готовое решение,будет полезно сохранить на будущее.

Ответить | Правка | ^ к родителю #10 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру