active directory回收站启用后不可关闭,仅保护启用后删除的对象;需林功能级别≥2008 r2、所有dc为2008 r2+、enterprise admins权限且未启用,启用后可完整恢复对象属性、密码哈希、acl及成员关系。

Windows Active Directory 域的回收站功能不是“开个开关就能用”的配置,而是需要满足硬性前提、一次性启用、后续自动生效的底层机制。启用后,误删的对象(用户、组、OU、计算机等)会保留在 CN=Deleted Objects 容器中,完整保留 SID、密码哈希、ACL、组成员关系等关键属性,恢复操作本身只需几秒,且不中断服务、无需重启域控制器。
确认并满足启用前提
缺一不可,否则命令执行失败或功能无效:
- 林功能级别必须 ≥ Windows Server 2008 R2(2003/2008 不支持;可通过
Get-ADForest查看) - 所有域控制器必须运行 Windows Server 2008 R2 或更高版本(2012/2016/2019/2022/2025 均可)
- 执行者必须是 Enterprise Admins 组成员,并在域控制器上以该身份启动 PowerShell
- 回收站尚未启用(启用后不可关闭、不可降级林功能级别)
使用 PowerShell 启用回收站
图形界面(ADAC)无法启用,只能通过管理员权限的 PowerShell 执行:
- 打开“Active Directory 模块 for Windows PowerShell”(以管理员身份运行)
- 运行命令(将
contoso.com替换为你的林根域名):Enable-ADOptionalFeature –Identity 'Recycle Bin Feature' –Scope ForestOrConfigurationSet –Target 'contoso.com' - 命令成功后等待复制完成(通常几分钟),所有 DC 同步该设置
- 验证是否启用:
Get-ADOptionalFeature -Filter "Name -eq 'Recycle Bin Feature'" | Select EnabledScopes
返回非空值即表示已启用
查找并还原误删对象
启用后删除的对象才会进入回收站,且默认保留 180 天(由 msDS-DeletedObjectLifetime 控制):
- 在 ADAC 中:左侧导航栏勾选“已删除的对象”,按名称或“最后更改时间”排序,找到目标对象(名称末尾含
DEL:xxxxx标识),右键 → “还原” - 用 PowerShell 快速定位并还原(例如还原姓名含“张三”的用户):
Get-ADObject -Filter {Name -like "DEL:*张三*"} -IncludeDeletedObjects | Restore-ADObject - 还原 OU 时,其下所有子对象(含嵌套 OU、用户、组)一并还原,结构与权限完全保持原样
- 可指定还原路径:
Restore-ADObject -Identity "CN=john\0ADEL:xxx" -TargetPath "OU=Sales,DC=contoso,DC=com"(省略则还原到原始位置)
常见失败原因与注意事项
即使启用了回收站,以下情况仍无法恢复:
- 对象是在回收站启用之前被删除的(只能依赖系统状态备份或第三方工具)
- 对象被“永久删除”(如用
dsrm -noprompt -force或 LDAP 直接调用LDAP_SERVER_PERMIT_UNSAFE_RENAME_OID) - 删除已超保留期(默认 180 天,超期后被垃圾回收程序永久清除)
- 执行还原的账户缺乏必要权限(需对目标容器有“写入所有属性”和“删除子项”权限)











