如何在 Exchange Online 中全局设置已删除项目的保留期?

如何在 Exchange Online 中全局设置已删除项目的保留期?

已删除邮件(可使用 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-MailboxPlancmdlet:

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-Mailboxcmdlet 未将邮箱对象传递给管道,但这是一个Set-Mailbox尝试匹配的值,并且此查找有时会失败,因为它返回多个邮箱。解决方案是使用唯一字段SamAccountName

Get-Mailbox | % { Set-Mailbox -Identity $_.SamAccountName -RetainDeletedItemsFor "30.00:00:00" }

相关内容