Zugriff auf eine Mailbox für andere User
Klaus Tachtler
klaus at tachtler.net
Mo Nov 12 05:02:11 CET 2018
Hallo Christoph,
ich habe das mal für mich unter nachfolgendem Link dokumentiert,
vielleicht hilft Dir das entsprechend weiter:
https://dokuwiki.tachtler.net/doku.php?id=tachtler:dovecot_shares
Wichtig ist, das die Ordnerstruktur, unter der ALLE Mailboxen liegen,
bei mir dem Benutzer vmail und der Gruppe vmail gehören. Außerdem
verwende ich das MailDir Format.
Die Befehle zur Freigabe der ACL und zur Überprüfung sollten jedoch
ohne weiteres übertragbar sein.
Grüße
Klaus.
> Hallo zusammen,
>
> ich verzweifle noch an einer Aufgabe, die ich unter Cyrus IMAPd
> trivial erledigen konnte: der Freigabe der Mailbox eines Benutzers
> (userA) für einen anderen Benutzer (userB).
>
> Dovecot ist in Version 2.2.13. Mailbox-System ist mdbox (nicht mbox
> oder Maildir!). Das System laeuft mit Debian. Die
> Mailbox-Verzeichnisse liegen unter /var/vmail/.
>
> Die ACLs der Mailbox des freigebenden Benutzers userA fuer Benutzer
> userB habe ich versucht folgendermassen zu setzen:
> doveadm mailbox list -u userA "*" | while read mailbox; do doveadm
> acl set -u userA "$mailbox" user=userB admin create delete expunge
> insert lookup post read write write-deleted write-seen; done
>
> Wie kann ich nun die gesetzten ACLs nun ueberpruefen?
>
> Mit
> "doveadm acl debug -u userB shared/userA"
> erhalte ich die Fehlermeldung
> "doveadm(userB): Error: Mailbox 'INBOX' in namespace 'shared/userA/'
> doesn't exist in /var/vmail/shared/userA/mail"
>
> Dies scheint mir plausibel zu sein, denn die Mailbox des userA liegt
> ja in "/var/vmail/userA/mail"
>
> Eine Abfrage
> "doveadm acl debug -u userB userA"
> ergibt
> "doveadm(userB): Error: Can't open mailbox userA: Mailbox doesn't
> exist: userA"
>
>
> /etc/dovecot/conf.d/10-mail.conf sieht bei mir so aus:
> mail_location = mdbox:~/mail:INBOX=/var/vmail/%n/mail
> mail_plugins = acl quota
> mail_shared_explicit_inbox = no
>
> namespace inbox {
> type = private
> separator = /
> prefix = INBOX/
> inbox = yes
> hidden = no
> list = yes
> subscriptions = yes
> ignore_on_failure = no
> }
>
> namespace {
> type = shared
> separator = /
> prefix = shared/%%u/
> location = mdbox:~/mail:INDEX=~/mail/shared/%%n
> list = yes
> subscriptions = yes
> ignore_on_failure = no
> }
>
> Ob der Eintrag fuer die shared mailboxen richtig ist, bin ich mir
> nicht sicher.
> Ich hatte zu Beginn nur den "namespace inbox" konfiguriert, aber
> jetzt muss ich auf andere eingerichtete Mailboxen Zugriffe vergeben...
>
> Mit Cyrus musste ich nur in cyradm ein "setaclmailbox INBOX.userA.*
> lrswipkxtecda" absetzen und in meinem Mailer wurde bei userB ein
> neuer Ordner "user.userA" mit allen freigegebenen Ordnern angezeigt.
>
> Wo bzw. wie kann ich dann die freigegebene Mailbox anzeigen lassen?
> Ich habe die Anzeige nur von abonierten IMAP-Ordner in meinem Mailer
> (Horde IMP) bereits deaktiviert, so dass alles auf das
> Zugriffsrechte bestehen, angezeigt werden sollte. - Das hat bislang
> auch mit Cyrus gut funktioniert.
>
> Mit Dovecot bekomme ich das einfach nicht hin ...
>
> Was muss ich tun, damit userB auf die Ordner von userA zugreifen
> kann und wie werden die freigegebenen Ordner von userA bei userB
> angezeigt?
>
> Schon mal Danke fuer Eure Hilfe!
> Christoph.
>
>
> --
> Christoph Haas
----- Ende der Nachricht von Christoph Haas
<christoph+dovecot_de at haas-online.org> -----
--
------------------------------------------------
e-Mail : klaus at tachtler.net
Homepage: https://www.tachtler.net
DokuWiki: https://dokuwiki.tachtler.net
------------------------------------------------
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname : nicht verfügbar
Dateityp : application/pgp-keys
Dateigröße : 3120 bytes
Beschreibung: Öffentlicher PGP-Schlüssel
URL : <https://listen.jpberlin.de/pipermail/dovecot/attachments/20181112/b13e86c6/attachment.skr>
Mehr Informationen über die Mailingliste Dovecot