Active Directory回收站 如何通过Powershell开启

Active Directory回收站

常见的与 Active Directory相关的灾难大多源于意外删除的对象。一旦对象从Active Directory中删除,它并不会立即从Active Directory中永久删除。一旦对象被删除,它将把isDeleted对象值设置为True,并将对象移至CN=Deleted Object下。

随后,对象将保留在那里,直到系统达到墓碑生存期值。默认情况下,该值为180天,如果需要,可以更改。一旦对象超过墓碑生存期,它将可供永久删除。在我在前一节中解释Active Directory数据库时,我提到了“在线碎片整理”。它使用垃圾收集器服务从Active Directory数据库中删除已删除的对象,并释放该空间给数据库。此服务每12小时运行一次。一旦删除的对象超过墓碑生存期值,它将在下一个垃圾收集器服务周期中被永久删除。问题在于,在墓碑过程中,大多数对象值都被剥离。因此,即使您能够恢复,这些对象值也需要重新输入。

在Windows Server 2008 R2以后的版本中,Microsoft引入了 Active Directory回收站 功能。启用此功能后,一旦对象被删除,它仍会将isDeleted对象值设置为True,并将对象移至CN=Deleted Object下。但现在,它不再由墓碑生存期控制,而是由删除对象生存期(DOL)控制。在此阶段,对象属性将保持不变,并且可以轻松恢复。默认情况下,DOL值等于墓碑生存期。此值可以通过修改msDS-deletedObjectLifetime对象值进行更改。一旦超过DOL,它将移至已回收状态,并将isRecycled对象值设置为True。在此状态下,无法恢复它,它将一直保持在此状态,直到墓碑生存期值超过。达到该值后,它将从Active Directory中永久删除。

Active Directory回收站功能要求至少是Windows Server 2008 R2域和林的功能级别。一旦启用此功能,就无法禁用它。

可以使用以下命令启用此功能,-Target 可以更改为您的域名。

Enable-ADOptionalFeature 'Recycle Bin Feature' -Scope ForestOrConfigurationSet -Target contoso.intra
Active Directory回收站 如何通过Powershell开启
Active Directory回收站启用

一旦启用,我们可以使用以下命令恢复已删除的对象,它将搜索isdeleted属性设置为true的对象。

Get-ADObject -Filter 'isdeleted -eq $true' -IncludeDeletedObjects
Active Directory回收站 如何通过Powershell开启
查找被删除的账号

现在我们知道了删除的对象,可以使用以下命令进行恢复,将还原用户对象pangshare。

Get-ADObject -Filter 'samaccountname -eq "dfrancis"' -IncludeDeletedObjects | Restore-ADObject
Active Directory回收站 如何通过Powershell开启
恢复被删除的账号

此文章为原创文章,作者:胖哥叨逼叨,如若转载,请与我联系并注明出处:https://www.pangshare.com/2895.htm

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 2023年11月28日 上午10:31
下一篇 2023年12月4日 下午12:49

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注