从Exchange服务器检索所有帐户的所有电子邮件

时间:2012-04-13 05:51:10

标签: exchange-server imap

有没有办法从Exchange服务器检索/下载所有用户帐户的所有电子邮件?粗略的方法是遍历每个用户并使用IMAP单独检索电子邮件。但是,我认为这将是非常低效和耗时的。

我知道实时,我们可以使用日记功能来获取所有电子邮件,但如何才能访问服务器上所有帐户的所有现有电子邮件?

谢谢!

2 个答案:

答案 0 :(得分:0)

我不确定这是否是你需要的。但是,如果您具有与Exchange服务器的本地连接,则导出也符合您的需求。使用Exchange 2007,您可以满足这些要求,也许在2010年,他们已经更改了其中一些要求。

  • 首先,您需要从32位Windows客户端执行导出脚本。
  • 安装了Exchange(32位)工具
  • 当然是Powershell。
  • 安装了Outlook。

导出所有用户的邮箱的脚本


$users = Get-Mailbox | select alias

foreach ($user in $users)
{
# Just info
Get-MailboxStatistics -id $user.alias | select-object DisplayName,@{name='TotalItemSize(MB)';expression={$_.TotalItemSize/1MB}};
# Give rights to each mailbox, you can avoid this after first time
Add-MailboxPermission -Identity $user.alias -User "domain\adminuser" -AccessRights FullAccess;
# Export to the folder you want (should be mapped if remote)
Export-Mailbox -PSTFolderPath P:\psts\ -id $user.usuarios -Confirm:$False

}

答案 1 :(得分:0)

没有本地功能可以做到这一点。 IMAP也不会给你完全保真。您可以使用模拟Exchange Web服务单独命中每个邮箱。如果您需要PST,则Exchange 2007上的Export-Mailbox或Exchange 2010上的New-MailboxExportRequest提供的解决方案。