Imap
列出使用者在 Cyrus IMAP 中可以訪問的郵箱?
我想知道是否有辦法列出使用者可以通過 cyradm(或其他方式)訪問的所有郵箱。可以執行
lam user.%
並解析輸出,但我認為這很糟糕:)
在閒逛之後回答自己
IMAP::Admin
#!/usr/bin/perl use IMAP::Admin; $imap = IMAP::Admin->new('Server' => 'localhost', 'Login' => 'cyrus', 'Password' => 'cyrus', ); my $finduser = "root"; # the user you search for my @mailboxes = $imap->list("user.%"); foreach my $mailbox (@mailboxes) { my %list = $imap->get_acl($mailbox); if (defined($list{$finduser})) { print $mailbox."\n"; } }