
Что именноlrswipkxtecdaв Кире? Я собралотсюдачто это как-то связано с ACL для почтовых ящиков в Cyrus, но может кто-нибудь пролить больше света на это? Отдельные буквы что-то обозначают?
Я обнаружил это в первый раз, когда делал дамп, mailboxes.db
а затем впоследствии, когда пытался выполнить какую-то неразрешенную операцию (например, это появлялось в подробном выводе при попытке удалить почтовый ящик без применения разрешения на удаление к пользователю cyrus
).
PS: Не знаю, будет ли дан ответ на такой маленький вопрос, но поиск в Google ничего конкретного не дал, поэтому я решил, что лучше спросить.
решение1
IMAP4 позволяет использовать общие почтовые ящики. Поэтому имеет смысл иметь некоторый контроль над правами пользователя на почтовый ящик. Эти права определяются списками контроля доступа (ACL). Cyrus IMAPd использует ACL для контроля доступа к любому типу почтового ящика, будь то частный, общий или публичный.
Каждый почтовый ящик содержит ACL, который представляет собой список записей контроля доступа. Эти записи состоят из идентификатора пользователя и прав, которые пользователь имеет на конкретном почтовом ящике.
Права есть (RFC4314):
l - lookup (mailbox is visible to LIST/LSUB commands, SUBSCRIBE
mailbox)
r - read (SELECT the mailbox, perform STATUS)
s - keep seen/unseen information across sessions (set or clear
\SEEN flag via STORE, also set \SEEN during APPEND/COPY/
FETCH BODY[...])
w - write (set or clear flags other than \SEEN and \DELETED via
STORE, also set them during APPEND/COPY)
i - insert (perform APPEND, COPY into mailbox)
p - post (send mail to submission address for mailbox,
not enforced by IMAP4 itself)
k - create mailboxes (CREATE new sub-mailboxes in any
implementation-defined hierarchy, parent mailbox for the new
mailbox name in RENAME)
x - delete mailbox (DELETE mailbox, old mailbox name in RENAME)
t - delete messages (set or clear \DELETED flag via STORE, set
\DELETED flag during APPEND/COPY)
e - perform EXPUNGE and expunge as a part of CLOSE
a - administer (perform SETACL/DELETEACL/GETACL/LISTRIGHTS)
«c» и «d» устарели с момента RFC4314 (раздел 2.1.1.).
Для администрирования списков ACL в Cyrus можно использовать cyradm:
setaclmailbox shared.questions jenny lrs
listaclmailbox shared.questions
deleteaclmailbox shared.questions jenny
Некоторые оптимизации:
- Используйте более короткие имена команд:
sam
,lam
,dam
- Используйте подстановочные знаки для почтовых ящиков:
sam shared.* jenny lrs
- Используйте any, чтобы установить права для всех пользователей:
sam shared.* anyone lrswipkxtecda
- Используйте all, чтобы разрешить все:
sam shared.* anyone all
- Добавление дефиса к имени пользователя может использоваться для «удаления» прав на почтовый ящик:
sam shared.secret -edgar all
решение2
Это коды ACL для почтовых ящиков, я полагаю. Я только предполагаю, поскольку вы даетеникакого контекста вообще.
Некоторые коды ACL (из hэре).
l Look up the name of the mailbox (but not its contents).
r Read the contents of the mailbox.
s Preserve the "seen" and "recent" status of messages across IMAP sessions.
w Write (change message flags such as "recent," "answered," and "draft").
i Insert (move or copy) a message into the mailbox.
p Post a message in the mailbox by sending the message
c Create a new mailbox below the top-level mailbox (ordinary users cannot create top-level mailboxes).
d Delete a message and/or the mailbox itself.
a Administer the mailbox (change the mailbox's ACL).