[Dovecot] ACLs - creating new top level folders

rog7993 at web.de rog7993 at web.de
Wed May 22 18:33:18 EEST 2013


Hello,

I didn't found a solution for this problem until now.

Is it possible to define an ACL, which allows an user to create a new 
top level folder in a foreign mailbox which is accessible in a shared 
namespace?

Creating subfolders within existing top level folders (like Inbox) 
works, if an appropriate dovecot-acl exists. But in an usual maildir 
structure, there is no parent folder for top level folders, in which I 
could place a dovecot-acl file.

Ingo

Am 17.05.2013 02:46, schrieb Ingo Rogalsky:
> Hi,
>
> I'm wondering, whether it's possible, to define an ACL on the mailbox
> itself. We use Dovecot 1.2.15 (included in Debian 6) and maildir
> filesystem layout:
>
> /home/mail01/user1/Maildir/new           \
> /home/mail01/user1/Maildir/cur            Inbox
> /home/mail01/user1/Maildir/tmp           /
> /home/mail01/user1/Maildir/.folder1/new  \
> /home/mail01/user1/Maildir/.folder1/cur   folder1
> /home/mail01/user1/Maildir/.folder1/tmp  /
> ...
>
> Assigning an ACL with full access rights for user2 to the folder Inbox
> works as expected. user2 can create subfolders of Inbox, too. But he
> can't create a new folder like folder1 parallel to Inbox. Is there a
> possibility of defining an ACL on the mailbox of user1 itself? Or do we
> need to create all subfolders beneath Inbox like this is usual with
> other IMAP servers?
>
> Ingo
>
> ---
> /usr/sbin/dovecot -c /etc/dovecot/dovecot-test.conf -n
>
> # 1.2.15: /etc/dovecot/dovecot-test.conf
> # OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.7
> base_dir: /var/run/dovecot-test/
> log_path(default): /var/log/dovecot-test/error.log
> log_path(imap): /var/log/dovecot-test/error.log
> log_path(pop3): /var/log/dovecot-test/error.log
> log_path(managesieve): /var/log/dovecot-test/managesieve.log
> info_log_path(default): /var/log/dovecot-test/info.log
> info_log_path(imap): /var/log/dovecot-test/info.log
> info_log_path(pop3): /var/log/dovecot-test/info.log
> info_log_path(managesieve): /var/log/dovecot-test/managesieve.log
> protocols: imap imaps pop3 pop3s managesieve
> listen(default): *:10143
> listen(imap): *:10143
> listen(pop3): *:10110
> listen(managesieve): *:12000
> ssl_listen(default): *:10943
> ssl_listen(imap): *:10943
> ssl_listen(pop3): *:10995
> ssl_listen(managesieve):
> ssl_cert_file: /etc/ssl/certs/imap-cert.pem
> ssl_key_file: /etc/ssl/private/imap-key.pem
> shutdown_clients: no
> login_dir: /var/run/dovecot-test//login
> login_executable(default): /usr/lib/dovecot/imap-login
> login_executable(imap): /usr/lib/dovecot/imap-login
> login_executable(pop3): /usr/lib/dovecot/pop3-login
> login_executable(managesieve): /usr/lib/dovecot/managesieve-login
> login_max_processes_count: 4096
> max_mail_processes: 4096
> verbose_proctitle: yes
> mail_location:
> maildir:~/Maildir:INDEX=/srv/dovecot/index/%u:CONTROL=/srv/dovecot/control/%u
>
> maildir_copy_preserve_filename: yes
> mbox_write_locks: fcntl dotlock
> mail_executable(default): /usr/lib/dovecot/imap
> mail_executable(imap): /usr/lib/dovecot/imap
> mail_executable(pop3): /usr/lib/dovecot/pop3
> mail_executable(managesieve): /usr/lib/dovecot/managesieve
> mail_process_size: 1024
> mail_plugins(default): fts fts_squat acl imap_acl
> mail_plugins(imap): fts fts_squat acl imap_acl
> mail_plugins(pop3):
> mail_plugins(managesieve):
> mail_plugin_dir(default): /usr/lib/dovecot/modules/imap
> mail_plugin_dir(imap): /usr/lib/dovecot/modules/imap
> mail_plugin_dir(pop3): /usr/lib/dovecot/modules/pop3
> mail_plugin_dir(managesieve): /usr/lib/dovecot/modules/managesieve
> pop3_lock_session(default): no
> pop3_lock_session(imap): no
> pop3_lock_session(pop3): yes
> pop3_lock_session(managesieve): no
> pop3_uidl_format(default): %08Xu%08Xv
> pop3_uidl_format(imap): %08Xu%08Xv
> pop3_uidl_format(pop3): %08Xv%08Xu
> pop3_uidl_format(managesieve): %08Xu%08Xv
> namespace:
>    type: private
>    separator: /
>    inbox: yes
>    list: yes
>    subscriptions: yes
> namespace:
>    type: shared
>    separator: /
>    prefix: Other Users/%%u/
>    location:
> maildir:%%h/Maildir:INDEX=/srv/dovecot/index/%%u:CONTROL=/srv/dovecot/control/%%u
>
>    list: children
> lda:
>    postmaster_address: postmaster at ...
>    mail_plugins: sieve acl
>    quota_full_tempfail: yes
>    auth_socket_path: /var/run/dovecot-test/auth-master
>    log_path: /var/log/dovecot-test/deliver.log
>    info_log_path: /var/log/dovecot-test/deliver.log
> auth default:
>    cache_size: 1024
>    cache_negative_ttl: 0
>    username_chars:
> abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@~
>    master_user_separator: *
>    debug: yes
>    passdb:
>      driver: passwd-file
>      args: /etc/dovecot/dovecot-passwd.masterusers
>      pass: yes
>      master: yes
>    passdb:
>      driver: passwd-file
>      args: /etc/dovecot/dovecot-passwd
>    passdb:
>      driver: pam
>    userdb:
>      driver: passwd-file
>      args: /etc/dovecot/dovecot-passwd
>    socket:
>      type: listen
>      client:
>        path: /var/run/dovecot-test/auth-client
>        mode: 384
>        user: vmail
>      master:
>        path: /var/run/dovecot-test/auth-master
>        mode: 384
>        user: vmail
> plugin:
>    acl: vfile
>    acl_shared_dict: file:/srv/dovecot/lib/shared-mailboxes
>    sieve: ~/.dovecot.sieve
>    sieve_dir: ~/.pysieved
>    fts: squat
>    fts_squat: partial=4 full=10



More information about the dovecot mailing list