Courier IMAP:只读邮箱?

Courier IMAP:只读邮箱?

是否可以将特定邮箱(Maildir)设为只读?这样用户只能阅读、转发和搜索邮件,而不能删除它们?

提前致谢

答案1

您可以轻松地做到这一点ACLs,特别是使用命令邮件目录

答案2

确定要放置的正确 ACL 并非易事,确定需要在哪些文件夹中更改 ACL 也并非易事。不放置正确的 ACL 会导致某些邮件客户端(如 roundcube)出现奇怪的行为,例如,您可能会删除一条消息,该消息似乎消失了,但如果您浏览到另一个文件夹(例如,已发送)并返回收件箱,该消息会重新出现。因此,收件箱仍处于只读状态,但我们不希望出现这种消失/重新出现的混乱。

我最终认为正确的做法是:

  1. lrasiw在 INBOX 上设置 ACL
  2. lrasiw在“已发送”文件夹上设置 ACL
  3. 将 lra 的 ACL 设置为垃圾文件夹

我已将其放入脚本中,您可能会发现它很有用:

root@messagerie[CHROOT][10.10.10.19] ~/SCRIPTS/MAIL # cat readonly.single
if [ "$#" -ne 1 ]
then
    echo "usage : $0 [email protected]"
    exit 1
fi

email="$1"
inbox="${1%@*}"
dst="/var/vmail/domain/$inbox"

set -x
maildiracl -set "$dst" "INBOX" owner lrasiw
maildiracl -set "$dst" "INBOX.Sent" owner lrasiw
maildiracl -set "$dst" "INBOX.Trash" owner lra
root@messagerie[CHROOT][10.10.10.19] ~/SCRIPTS/MAIL # cat fullaccess.single
if [ "$#" -ne 1 ]
then
    echo "usage : $0 [email protected]"
    exit 1
fi

email="$1"
inbox="${1%@*}"
dst="/var/vmail/domain/$inbox"

set -x
maildiracl -set "$dst" "INBOX" owner aceilrstwx
maildiracl -set "$dst" "INBOX.Sent" owner aceilrstwx
maildiracl -set "$dst" "INBOX.Trash" owner aceilrstwx
root@messagerie[CHROOT][10.10.10.19] ~/SCRIPTS/MAIL # 

相关内容