已删除邮件(可使用 Outlook 中的“恢复已删除邮件”功能恢复)的默认保留期限为 14 天,但可以更改;不过,这是针对每个邮箱的设置,需要使用 PowerShell 进行更改,因为没有 GUI 设置。对所有现有用户执行此操作非常简单,但每次创建新用户时都需要重复此过程。
有没有办法全局设置默认Exchange Online 中已删除项目的保留期,以便它自动应用于新邮箱?
(我也对这个问题进行了标记Exchange-2013
,因为这是 Exchange Online(当前)所基于的,并且该问题也适用于本地版本。)
答案1
我询问了微软支持人员,他们告诉我这不仅可以做到,而且客户甚至可以做到,而不需要任何支持电话。
已删除邮件保留期限的全局配置存储在分配给用户的邮箱计划中:
PS C:\windows\system32> Get-MailboxPlan | ft Name, RetainDeletedItemsFor
Name RetainDeletedItemsFor
---- ---------------------
ExchangeOnlineDeskless-200f67ad-971f-4485-8df4-496cb337aaa0 14.00:00:00
ExchangeOnlineEnterprise-7d4dfcb8-b74f-4fbc-b154-008eba3ed7ab 14.00:00:00
ExchangeOnline-6562c5b9-cec6-4d6c-bbed-5cd1551877c7 14.00:00:00
为了配置它,您可以使用以下Set-MailboxPlan
cmdlet:
Get-MailboxPlan | Set-MailboxPlan -RetainDeletedItemsFor "30.00:00:00"
执行此操作后,全局设置将被改变:
PS C:\windows\system32> Get-MailboxPlan | ft Name, RetainDeletedItemsFor
Name RetainDeletedItemsFor
---- ---------------------
ExchangeOnlineDeskless-200f67ad-971f-4485-8df4-496cb337aaa0 30.00:00:00
ExchangeOnlineEnterprise-7d4dfcb8-b74f-4fbc-b154-008eba3ed7ab 30.00:00:00
ExchangeOnline-6562c5b9-cec6-4d6c-bbed-5cd1551877c7 30.00:00:00
这会将设置应用于所有新用户;但是,您仍然需要为现有用户修改它:
Get-Mailbox | Set-Mailbox -RetainDeletedItemsFor "30.00:00:00"
答案2
继@massimo 的回答之后,我在运行时遇到了一个问题:
Get-Mailbox | Set-Mailbox -RetainDeletedItemsFor "30.00:00:00"
,
出现错误:
无法执行该操作,因为“用户名' 匹配多个条目。
出现这种情况的原因似乎是Get-Mailbox
cmdlet 未将邮箱对象传递给管道,但这是一个Set-Mailbox
尝试匹配的值,并且此查找有时会失败,因为它返回多个邮箱。解决方案是使用唯一字段SamAccountName
:
Get-Mailbox | % { Set-Mailbox -Identity $_.SamAccountName -RetainDeletedItemsFor "30.00:00:00" }