On 2010-08-25 12:54:40 +0200, Chris Moules wrote:
my solution for a similar problem:
[[[ namespace public { separator = /
# Mailboxes are visible under "shared/user@domain/" # %%n, %%d and %%u are expanded to the destination user. prefix = archive/
# Mail location for other users' mailboxes. Note that %variables and ~/ # expands to the logged in user's data. %%n, %%d, %%u and %%h expand to the # destination user's data. location = maildir:/srv/mail/archive:INDEX=/srv/mail/%u/shared/%%u:CONTROL=/srv/mail/%u/shared
# Use the default namespace for saving subscriptions. subscriptions = yes
# List the shared/ namespace only if there are visible shared mailboxes. list = children } ]]]
only my mail archive user can deliver mails into that namespace (via ACL (p)). all other users only have read permissions, as index/control are per user, each user can have their own flags (like seen).
shouldnt this give you exactly what you want?
This seems to be solving a different problem to mine. I need, something like a mirror of accounts, on a separate server that gives the user read-only access to the content. The data is not public. I should only be accessible to the authorised user. The input to this archive is the 'original' live maildir, so I do not have control over the creation of folders, etc. This causes problems with dovecot ACL inheritance as the mailbox is not created via the dovecot server with the ACLs.
you can specify default ACLs in /etc/dovecot/acls?
i suggest playing around with mail_debug and see what ACL files it tries to load.
and the name "public" for the namespace is confusing. it is not really public. only people with ACL entries can read from it. (yes i tested this)
but unlike shared namespaces it is not user specific (e.g. "shared/foo@bar/INBOX")
darix
-- openSUSE - SUSE Linux is my linux openSUSE is good for you www.opensuse.org