Hello!
INBOX sharing does not seem to work, although all other mailboxes work.
User bar@example.de has shared a few mailboxes: # doveadm acl get -u bar@example.de INBOX ID Global Rights
user=foo@example.de lookup read write-seen
# doveadm acl get -u bar@example.de Sent ID Global Rights
user=foo@example.de lookup read write-seen
# doveadm acl get -u bar@example.de Drafts ID Global Rights
user=foo@example.de lookup read write-seen
But user foo@example.de can't see the shared INBOX: # doveadm mailbox list -u foo@example.de Trash Sent Drafts Junk shared shared/bar@example.de shared/bar@example.de/Sent shared/bar@example.de/Drafts INBOX
A review of the ACL does not explain the behaviour: # doveadm acl debug -u foo@example.de shared/bar@example.de/INBOX doveadm(foo@example.de): Info: Mailbox 'INBOX' is in namespace 'shared/bar@example.de/' doveadm(foo@example.de): Info: Mailbox path: /srv/mail-storage/mailhome/example.de/bar/Maildir doveadm(foo@example.de): Info: Per-user private flags in mailbox: \Seen doveadm(foo@example.de): Info: User foo@example.de has rights: lookup read write-seen doveadm(foo@example.de): Info: Mailbox found from dovecot-acl-list doveadm(foo@example.de): Info: User bar@example.de found from ACL shared dict doveadm(foo@example.de): Info: Mailbox shared/bar@example.de/INBOX is visible in LIST
---------- doveconf -n ---------- # 2.3.4.1 (f79e8e7e4): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.4 () # OS: Linux 4.19.0-10-amd64 x86_64 Debian 10.5 # Hostname: XXX.YYYY.de auth_master_user_separator = * auth_verbose = yes first_valid_gid = 401 first_valid_uid = 401 last_valid_gid = 401 last_valid_uid = 401 mail_gid = vmail mail_home = /srv/mail-storage/mailhome/%d/%n mail_location = maildir:~/Maildir mail_plugins = " acl listescape zlib" mail_uid = vmail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext namespace inbox { inbox = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = create special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { auto = no special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = separator = / type = private } namespace shared { list = children location = maildir:/srv/mail-storage/mailhome/%%d/%%n/Maildir:INDEXPVT=~/Maildir/shared/%%d/%%n prefix = shared/%%u/ separator = / subscriptions = yes type = shared } passdb { args = /etc/dovecot/master-users driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile acl_shared_dict = file:/srv/mail-storage/mailhome/shared-mailboxes.db sieve = file:~/sieve;active=~/.dovecot.sieve zlib_save = gz zlib_save_level = 6 } protocols = " imap lmtp sieve" service auth { unix_listener auth-userdb { mode = 0777 } } ssl = required ssl_cert = </var/lib/dehydrated/certs/XXX.YYYY.de/fullchain.pem ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it userdb { driver = static } userdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } protocol lmtp { mail_plugins = " acl listescape zlib sieve" } protocol imap { mail_max_userip_connections = 20 mail_plugins = " acl listescape zlib imap_acl" }
I don't think it is relevant, but I don't want to forget to mention that /srv/mail-storage/ is an NFS share.
It would bee nice if someone has a hint. I hope it isn't a bug.
Regards Torsten
Hi,
try setting mail_shared_explicit_inbox=yes
https://doc.dovecot.org/settings/core/#mail-shared-explicit-inbox <https://doc.dovecot.org/settings/core/#mail-shared-explicit-inbox>
Sami
On 18. Aug 2020, at 23.56, Torsten <dovecot.lists@saldyn.net> wrote:
Hello!
INBOX sharing does not seem to work, although all other mailboxes work.
User bar@example.de has shared a few mailboxes: # doveadm acl get -u bar@example.de INBOX ID Global Rights user=foo@example.de lookup read write-seen # doveadm acl get -u bar@example.de Sent ID Global Rights user=foo@example.de lookup read write-seen # doveadm acl get -u bar@example.de Drafts ID Global Rights user=foo@example.de lookup read write-seen
But user foo@example.de can't see the shared INBOX: # doveadm mailbox list -u foo@example.de Trash Sent Drafts Junk shared shared/bar@example.de shared/bar@example.de/Sent shared/bar@example.de/Drafts INBOX
A review of the ACL does not explain the behaviour: # doveadm acl debug -u foo@example.de shared/bar@example.de/INBOX doveadm(foo@example.de): Info: Mailbox 'INBOX' is in namespace 'shared/bar@example.de/' doveadm(foo@example.de): Info: Mailbox path: /srv/mail-storage/mailhome/example.de/bar/Maildir doveadm(foo@example.de): Info: Per-user private flags in mailbox: \Seen doveadm(foo@example.de): Info: User foo@example.de has rights: lookup read write-seen doveadm(foo@example.de): Info: Mailbox found from dovecot-acl-list doveadm(foo@example.de): Info: User bar@example.de found from ACL shared dict doveadm(foo@example.de): Info: Mailbox shared/bar@example.de/INBOX is visible in LIST
---------- doveconf -n ---------- # 2.3.4.1 (f79e8e7e4): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.4 () # OS: Linux 4.19.0-10-amd64 x86_64 Debian 10.5 # Hostname: XXX.YYYY.de auth_master_user_separator = * auth_verbose = yes first_valid_gid = 401 first_valid_uid = 401 last_valid_gid = 401 last_valid_uid = 401 mail_gid = vmail mail_home = /srv/mail-storage/mailhome/%d/%n mail_location = maildir:~/Maildir mail_plugins = " acl listescape zlib" mail_uid = vmail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext namespace inbox { inbox = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = create special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { auto = no special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = separator = / type = private } namespace shared { list = children location = maildir:/srv/mail-storage/mailhome/%%d/%%n/Maildir:INDEXPVT=~/Maildir/shared/%%d/%%n prefix = shared/%%u/ separator = / subscriptions = yes type = shared } passdb { args = /etc/dovecot/master-users driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile acl_shared_dict = file:/srv/mail-storage/mailhome/shared-mailboxes.db sieve = file:~/sieve;active=~/.dovecot.sieve zlib_save = gz zlib_save_level = 6 } protocols = " imap lmtp sieve" service auth { unix_listener auth-userdb { mode = 0777 } } ssl = required ssl_cert = </var/lib/dehydrated/certs/XXX.YYYY.de/fullchain.pem ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it userdb { driver = static } userdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } protocol lmtp { mail_plugins = " acl listescape zlib sieve" } protocol imap { mail_max_userip_connections = 20 mail_plugins = " acl listescape zlib imap_acl" }
I don't think it is relevant, but I don't want to forget to mention that /srv/mail-storage/ is an NFS share.
It would bee nice if someone has a hint. I hope it isn't a bug.
Regards Torsten
Sami, thanks a lot it works.
Torsten
Am 19.08.20 um 15:59 schrieb Sami Ketola:
Hi,
try setting mail_shared_explicit_inbox=yes
https://doc.dovecot.org/settings/core/#mail-shared-explicit-inbox
Sami
On 18. Aug 2020, at 23.56, Torsten <dovecot.lists@saldyn.net <mailto:dovecot.lists@saldyn.net>> wrote:
Hello!
INBOX sharing does not seem to work, although all other mailboxes work.
User bar@example.de <mailto:bar@example.de> has shared a few mailboxes: # doveadm acl get -u bar@example.de <mailto:bar@example.de> INBOX ID Global Rights user=foo@example.de <mailto:user=foo@example.de> lookup read write-seen # doveadm acl get -u bar@example.de <mailto:bar@example.de> Sent ID Global Rights user=foo@example.de <mailto:user=foo@example.de> lookup read write-seen # doveadm acl get -u bar@example.de <mailto:bar@example.de> Drafts ID Global Rights user=foo@example.de <mailto:user=foo@example.de> lookup read write-seen
But user foo@example.de <mailto:foo@example.de> can't see the shared INBOX: # doveadm mailbox list -u foo@example.de <mailto:foo@example.de> Trash Sent Drafts Junk shared shared/bar@example.de <mailto:shared/bar@example.de> shared/bar@example.de <mailto:shared/bar@example.de>/Sent shared/bar@example.de <mailto:shared/bar@example.de>/Drafts INBOX
A review of the ACL does not explain the behaviour: # doveadm acl debug -u foo@example.de <mailto:foo@example.de> shared/bar@example.de <mailto:shared/bar@example.de>/INBOX doveadm(foo@example.de <mailto:foo@example.de>): Info: Mailbox 'INBOX' is in namespace 'shared/bar@example.de <mailto:shared/bar@example.de>/' doveadm(foo@example.de <mailto:foo@example.de>): Info: Mailbox path: /srv/mail-storage/mailhome/example.de/bar/Maildir <http://example.de/bar/Maildir> doveadm(foo@example.de <mailto:foo@example.de>): Info: Per-user private flags in mailbox: \Seen doveadm(foo@example.de <mailto:foo@example.de>): Info: User foo@example.de <mailto:foo@example.de> has rights: lookup read write-seen doveadm(foo@example.de <mailto:foo@example.de>): Info: Mailbox found from dovecot-acl-list doveadm(foo@example.de <mailto:foo@example.de>): Info: User bar@example.de <mailto:bar@example.de> found from ACL shared dict doveadm(foo@example.de <mailto:foo@example.de>): Info: Mailbox shared/bar@example.de <mailto:shared/bar@example.de>/INBOX is visible in LIST
---------- doveconf -n ---------- # 2.3.4.1 (f79e8e7e4): /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.4 () # OS: Linux 4.19.0-10-amd64 x86_64 Debian 10.5 # Hostname: XXX.YYYY.de <http://XXX.YYYY.de> auth_master_user_separator = * auth_verbose = yes first_valid_gid = 401 first_valid_uid = 401 last_valid_gid = 401 last_valid_uid = 401 mail_gid = vmail mail_home = /srv/mail-storage/mailhome/%d/%n mail_location = maildir:~/Maildir mail_plugins = " acl listescape zlib" mail_uid = vmail managesieve_notify_capability = mailto managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date index ihave duplicate mime foreverypart extracttext namespace inbox { inbox = yes location = mailbox Drafts { auto = subscribe special_use = \Drafts } mailbox Junk { auto = create special_use = \Junk } mailbox Sent { auto = subscribe special_use = \Sent } mailbox "Sent Messages" { auto = no special_use = \Sent } mailbox Trash { auto = subscribe special_use = \Trash } prefix = separator = / type = private } namespace shared { list = children location = maildir:/srv/mail-storage/mailhome/%%d/%%n/Maildir:INDEXPVT=~/Maildir/shared/%%d/%%n prefix = shared/%%u/ separator = / subscriptions = yes type = shared } passdb { args = /etc/dovecot/master-users driver = passwd-file master = yes pass = yes } passdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } plugin { acl = vfile acl_shared_dict = file:/srv/mail-storage/mailhome/shared-mailboxes.db sieve = file:~/sieve;active=~/.dovecot.sieve zlib_save = gz zlib_save_level = 6 } protocols = " imap lmtp sieve" service auth { unix_listener auth-userdb { mode = 0777 } } ssl = required ssl_cert = </var/lib/dehydrated/certs/XXX.YYYY.de/fullchain.pem <http://XXX.YYYY.de/fullchain.pem> ssl_dh = # hidden, use -P to show it ssl_key = # hidden, use -P to show it userdb { driver = static } userdb { args = /etc/dovecot/dovecot-ldap.conf.ext driver = ldap } protocol lmtp { mail_plugins = " acl listescape zlib sieve" } protocol imap { mail_max_userip_connections = 20 mail_plugins = " acl listescape zlib imap_acl" }
I don't think it is relevant, but I don't want to forget to mention that /srv/mail-storage/ is an NFS share.
It would bee nice if someone has a hint. I hope it isn't a bug.
Regards Torsten
participants (2)
-
Sami Ketola
-
Torsten