当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] 为什么永久删除 Exchange Online 邮箱很复杂

作者:精品下载站 日期:2024-12-14 04:06:23 浏览:15 分类:玩电脑

为什么永久删除 Exchange Online 邮箱很复杂


删除邮箱看似简单,但保留可能会带来困难

一位读者询问永久删除 Exchange Online 邮箱的最佳方法是什么。从表面上看,答案很简单:删除邮箱,使其进入软删除状态,然后永久删除邮箱。至少,理论上是这样。事实证明,Microsoft 365 Purview 合规性策略可能会使该过程变得更加复杂,正如我们将在此处探讨的那样。

在开始之前,我要指出的是,在合规性策略生效期间,未经授权不得删除邮箱。组织使用合规性策略是有原因的,如果您继续永久删除邮箱,则会从搜索索引中删除该邮箱中的内容,并使这些项目对电子数据展示不可见。在删除组织出于合规目的而保留的任何内容之前,请确保文书工作已准备就绪。

删除 Azure AD 帐户

删除 Exchange Online 邮箱的通常起点是删除所有者的 Azure AD 帐户。此操作会将帐户放入 Azure AD 回收站,并将邮箱置于软删除状态。该帐户会在回收站中保留 30 天,之后 Azure AD 会永久删除该帐户。当 Azure AD 帐户仍然存在时,无法删除软删除的邮箱,因此删除过程的第一步是永久删除 Azure AD 帐户。您可以等待 30 天过去,也可以强制删除。

在此期间,邮箱处于软删除状态。为了允许恢复帐户及其邮箱,邮箱保持与已删除的 Azure AD 帐户的连接(帐户的标识符存在于邮箱的 ExternalDirectoryObjectId 属性中)。

此代码段使用图形请求来查找软删除的用户帐户集并返回每个帐户的显示名称和标识符。

$Uri = "https://graph.microsoft.com/V1.0/directory/deletedItems/microsoft.graph.user"
[array]$DeletedUsers = Invoke-MgGraphRequest -Uri $Uri -Method Get

$DeletedUsers.Value.Foreach({Write-Host $_.DisplayName, $_.id})
Business Queries 423069fa-1b1c-4d99-994e-c46f4877c510
Ståle Hansen (Office 365 for IT Pros) 8aa1261a-b63e-4d5e-8acb-174879fc007a

本文介绍了一种列出软删除帐户的更复杂的方法。重要的是要知道您要强制删除的帐户的标识符。在本例中,我们将删除 Ståle Hansen 帐户(标识符 8aa1261a-b63e-4d5e-8acb-174879fc007a)。这个 PowerShell 命令可以解决这个问题:

Remove-MgDirectoryDeletedItem -DirectoryObjectId 8aa1261a-b63e-4d5e-8acb-174879fc007a

警告:永久删除 Azure AD 帐户后,您就消除了恢复该帐户的任何机会。去了云端的大字节桶里了。

删除邮箱

根据软删除邮箱上是否存在某种形式的保留,删除拥有邮箱的 Azure AD 帐户:

  • 如果邮箱不存在保留,则允许 Exchange Online 永久删除邮箱。这可能不会立即发生,因为删除发生的确切时间取决于后台作业处理邮箱的时间。
  • 如果邮箱上存在任何保留或保留策略,Exchange Online 会将邮箱置于非活动状态。邮箱将保持此状态,直到删除管理邮箱中任何内容的最后保留或保留策略(或标签)。发生这种情况时,邮箱将离开非活动状态并成为正常的软删除邮箱,并且最终删除倒计时开始。 注意:在消息中心通知 MC411428(2022 年 8 月 8 日)中,Microsoft 宣布他们将把非活动邮箱的恢复期从最后一次保留解除后的 183 天改为 30 天。该变更将于 2022 年 9 月底生效

非活动邮箱的存在是为了确保 Exchange Online 永远不会删除保留所需的任何信息。您不需要为非活动邮箱授予许可,它们可以根据需要保留在原位置(显然,邮箱在活动时拥有许可证)。我的租户中的一些不活动邮箱可以追溯到 2015 年。

您可以使用Remove-Mailbox cmdlet 强制Exchange Online 删除软删除的邮箱。如果没有对邮箱进行保留,Remove-Mailbox 将终止永久删除的倒计时并删除该邮箱。但是,如果邮箱上存在任何类型的保留,Remove-Mailbox 将不起作用,如下所示:

$Mbx = Get-Mailbox -Identity Stale.Hansen -SoftDeletedMailbox
Remove-Mailbox -PermanentlyDelete -Identity $Mbx.DistinguishedName

Confirm
Are you sure you want to perform this action?
Removing the mailbox Identity:"Soft Deleted Objects\Stale.Hansen" will mark the mailbox and the archive, if present, for deletion. The associated Windows Live ID "[email protected]" will also be deleted and will not be available for any other Windows Live service.
[Y] Yes  [A] Yes to All  [N] No  [L] No to All  [?] Help (default is "Y"): y
Error on proxy command 'Remove-Mailbox -PermanentlyDelete:$True -Identity:'Soft Deleted Objects\Stale,Hansen
-Confirm:$False' to server AM9PR04MB8938.eurprd04.prod.outlook.com: Server version 15.20.5395.0000, Proxy method PSWS:
Cmdlet error with following error message:
Microsoft.Exchange.Management.Tasks.RecipientTaskException: The user mailbox couldn't be permanently deleted. The user mailbox has at least one type of hold or hold policy applied to it. Please remove the holds before trying to
delete. LitigationHoldEnabled: false, ComplianceTagHoldApplied: true, DelayHoldApplied: true,
DelayReleaseHoldApplied: true, OrganizationPolicies Applied: mbxf6a1654abdba4712a43c354e28a4d56c:2, UserPolicies Applied: 7c5feb6c-5719-4d12-96df-e70bb54b14c3, restrictivePolicies Applied: , CpsInfo: . For more information, please see the PowerShell cmdlets, Get-OrganizationConfig <>|fl inplace*, and Get-Mailbox <>|fl compl*,delay*,inplace*,litig*OrganizationPolicies Applied: 

由于需要检查合规性策略,Remove-Mailbox 可能需要几分钟的时间才会返回错误。这并不罕见。 Exchange Online 只是确保一切就绪以允许删除邮箱。

处理合规政策

在这种情况下,Exchange Online 报告无法继续,因为邮箱位于组织保留策略 (mbxf6a1654abdba4712a43c354e28a4d56c:2) 和用户策略 (7c5feb6c-5719-4d12-96df-e70bb54b14c3) 的范围内。

要检查组织保留,请运行 Get-OrganizationConfig cmdlet 并检查保留标识符。在此输出中,保留标识符出现在列表的末尾。

Get-OrganizationConfig | Select-Object -ExpandProperty InPlaceHolds
mbx85eb38087b2642619b79161788f5b81b:1
grp85eb38087b2642619b79161788f5b81b:1
grp5d763f9615e8424a8190b49687c65f46:1
grpfcab5f8ef3e74a778c33a744d686b010:1
mbx19200b9af08442529be070dae2fd54d3:1
grpf6a1654abdba4712a43c354e28a4d56c:1
mbxc1e2d6f1785d4bf8a7746a26e58e5f66:1
mbxf6a1654abdba4712a43c354e28a4d56c:2

要查找保留策略,请从保留标识符中删除“mbx”前缀和“:2”后缀,以 f6a1654abdba4712a43c354e28a4d56c 结尾。连接到合规性端点并使用此值查找保留策略:

Connect-IPPSSession
Get-RetentionCompliancePolicy -Identity f6a1654abdba4712a43c354e28a4d56c

Name                        Enabled Mode
----                        ------- ----
Company Retention Labels       True Enforce

某些保留策略将保留标签发布到邮箱和其他位置(如此处的情况),因此此策略不保留任何内容。但为了确保保留策略不会阻止删除邮箱,您可以通过运行 Set-Mailbox 将邮箱从所有组织范围的保留中排除。同时,您应该删除应用于邮箱的延迟保留,以防止托管文件夹助理在释放保留后立即从邮箱中删除保留的信息。

这些命令将软删除的邮箱从所有组织保留中排除,并释放对常规邮箱内容 (RemoveDelayHoldApplied) 和合规性记录 (RemoveDelayReleaseHoldApplied) 的延迟保留:

Set-Mailbox -Identity $Mbx.DistinguishedName -InactiveMailbox -ExcludeFromAllOrgHolds 
Set-Mailbox -Identity $Mbx.DistinguishedName -RemoveDelayHoldApplied -InactiveMailbox
Set-Mailbox -Identity $Mbx.DistinguishedName -RemoveDelayReleaseHoldApplied -InactiveMailbox

可能存在其他保留策略来保留邮箱中存储的信息。有关更多信息,请阅读 Microsoft 关于如何识别和删除这些保留的建议。

如果Remove-Mailbox报告该邮箱处于 Exchange Online 诉讼保留状态,您可以通过以下方式释放它:

Set-Mailbox -Identity $Mbx.DistinguishedName -LitigationHoldEnabled $False -InactiveMailbox

应用程序保留策略

运行“Remove-Mailbox”时显示的错误标识了用户策略 7c5feb6c-5719-4d12-96df-e70bb54b14c3 的保留。运行 Get-RetentionCompliancePolicy 会查找策略:

Get-RetentionCompliancePolicy -Identity 7c5feb6c-5719-4d12-96df-e70bb54b14c3 -DistributionDetail | Format-Table Name, Enabled, Mode, ExchangeLocation, Applications

Name                   Enabled Mode    ExchangeLocation Applications
----                   ------- ----    ---------------- ------------
Teams Private Channels    True Enforce {All}            {User:MicrosoftTeamsChannelMessages}

此信息告诉我们该策略适用于所有 Exchange Online 邮箱。因此,您可能期望存储在组织配置中的就地保留会列出该策略,但它不在那里。这是因为这是一项应用保留策略,用于处理由 Microsoft 365 基础为 Teams 私人渠道对话创建的合规性记录。

Microsoft 对于涵盖所有 Exchange Online 邮箱的保留策略的建议是将软删除邮箱添加为策略的排除项。通常,您可以通过运行 Set-AppRetentionCompliancePolicy cmdlet 添加邮箱排除项,如下所示:

Set-AppRetentionCompliancePolicy -Identity "Teams Private Channels" -AddExchangeLocationException $Mbx.PrimarySmtpAddress

遗憾的是,您无法将软删除邮箱添加为应用保留策略的排除项。微软已经承认应用程序保留策略存在这一缺陷,并正在努力解决该问题。如果您拥有 Office 365 E5 或更高版本,则可以使用自适应范围来控制应用于非活动邮箱的保留策略。但是,仍然需要排除特定的非活动邮箱以允许将其删除。

否则,唯一的解决方法是禁用应用程序保留策略一段时间,以允许邮箱删除继续进行。禁用该策略后,最多可能需要一天的时间,Exchange Online 才会允许继续删除邮箱。删除邮箱后,您可以重新启用应用程序保留策略。从合规角度来看,这不是一个好情况。

检查持有情况以找到大块

处理完所有保留后,我们可以继续使用 Get-Mailbox 检查邮箱的保留状态:

Get-Mailbox -SoftDeletedMailbox -Identity $Mbx.Distinguishedname | Format-List compl*, delay*, InplaceHolds, litigationholdEnabled

ComplianceTagHoldApplied : True
DelayHoldApplied         : False
DelayReleaseHoldApplied  : False
InPlaceHolds             : {-mbxf6a1654abdba4712a43c354e28a4d56c, -mbxc1e2d6f1785d4bf8a7746a26e58e5f66, mbx19200b9af08442529be070dae2fd54d3, -mbx85eb38087b2642619b79161788f5b81b}
LitigationHoldEnabled    : False

为了能够删除邮箱,我们需要所有保留类型的状态为 False。除了ComplianceTagHoldApplied 之外,一切都很好。这意味着邮箱中的某些项目具有保留标签。要查找并删除保留标签,您需要恢复非活动邮箱并检查所有文件夹和单个项目,可能通过使用内容搜索来查找标记的项目。显然,这可能是一项艰巨的工作。删除项目和文件夹将不起作用,因为这些项目将保留在可恢复项目结构中,直到其保留期结束。

除非您非常精确地知道哪些项目和文件夹有标签,否则最好不要理会这些邮箱,让贴有标签的项目过期。最终,在最后一个项目过期后,托管文件夹助理将删除该邮箱。

如果所有保留类型最终都为 False,您应该能够成功运行Remove-Mailbox

删除软删除的邮箱很复杂

经过跟踪和删除保留过程中的起起落落,我们可以得出结论,删除软删除邮箱是一项复杂的工作。如果您知道必须提前完全删除邮箱,则可以使用合规门户中的保留策略查找功能来预先检查涉及哪些策略。即便如此,这只会显示 Microsoft 365 保留策略,并且正如我们发现的那样,其他因素可以阻止删除邮箱,包括单个标记项目的存在。有时很容易识别阻塞保持,有时则不然。即使可以,您也可能只能通过暂时删除它来解决保留问题。

考虑到所有这些,也许最好不要理会软删除和不活动的邮箱,让 Exchange Online 管理保留策略的复杂交互,并决定邮箱何时最终进入永久删除状态。毕竟,您不需要为不活动的邮箱付费,它们不会造成妨碍,所以为什么要担心它们呢?

Microsoft 365 杀伤链和攻击路径管理

有效的网络安全策略需要对攻击如何展开有清晰、全面的了解。阅读本白皮书以获得保卫您的组织所需的专家见解!

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯