如何对标注[No Policy]的邮箱运行Get-RetentionPolicy并应用默认保留策略
Exchange Online 批量为未配置保留策略的邮箱应用默认策略
核心逻辑说明
Exchange 管理面板中显示的「[No Policy]」仅为前端展示文本,系统中不存在对应这个名称的保留策略实例。未配置保留策略的邮箱,其 RetentionPolicy 属性的实际值为 $null,直接按空值筛选目标邮箱即可,无需尝试检索不存在的空策略对象。
操作步骤
- 先获取你要应用的默认保留策略对象,运行以下命令查看所有可用保留策略,确认目标策略的准确名称:
Get-RetentionPolicy | Select-Object Name, DistinguishedName
- 定义目标策略变量,将下方
<默认策略名称>替换为你上一步查到的准确策略名:
$targetRetentionPolicy = Get-RetentionPolicy "<默认策略名称>"
- 运行预览命令验证筛选结果,确认返回的都是你需要修改的、未配置保留策略的邮箱:
Get-Mailbox -Filter 'RetentionPolicy -eq $null' -ResultSize Unlimited | Select-Object Name, UserPrincipalName, RetentionPolicy
- 确认筛选结果无误后,运行批量配置命令完成设置:
Get-Mailbox -Filter 'RetentionPolicy -eq $null' -ResultSize Unlimited | Set-Mailbox -RetentionPolicy $targetRetentionPolicy.Identity
注意事项
- 批量操作前建议先选取1~2个测试邮箱验证配置逻辑:
验证配置生效后再执行全量批量操作,避免误改已有自定义保留策略的邮箱。# 替换为测试邮箱的用户主体名称 Set-Mailbox "test@contoso.com" -RetentionPolicy $targetRetentionPolicy.Identity - 如果是Exchange混合部署环境,本地AD同步的邮箱需要在本地Exchange服务器端配置保留策略后同步到云端,不可直接在Exchange Online侧修改同步邮箱的保留策略。
- 操作完成后可重新运行步骤3的预览命令,正常返回结果为空即代表所有邮箱都已配置保留策略。
内容的提问来源于stack exchange,提问作者djreisch
相关产品推荐
相关产品推荐

