Búsqueda de sitios web

Restauración de objetos/usuarios de Active Directory eliminados


Después de eliminar cualquier objeto en Active Directory (un usuario, un grupo, una computadora o una unidad organizativa), puede restaurarlo. En este artículo, mostraremos cómo restaurar un objeto eliminado en AD utilizando PowerShell y herramientas gráficas.

En primer lugar, veamos qué sucede cuando elimina un objeto del AD. El comportamiento de AD al eliminar objetos depende de si la Papelera de reciclaje de Active Directory está habilitada o no (está deshabilitada de forma predeterminada). En ambos casos, el objeto no se elimina físicamente, solo se marca como eliminado (el valor del atributo isDeleted se cambia a verdadero) y se mueve a un contenedor especial de Objetos eliminados ( no se muestra en los complementos AD mmc). Sin embargo, si la Papelera de reciclaje de AD está habilitada, se mantienen todos los atributos y la membresía.

De forma predeterminada, puede restaurar un objeto eliminado en un plazo de 180 días (se define en el atributo de dominio msDS-deletedObjectLifetime). Si el período ha terminado, el objeto aún permanece en el contenedor de Objetos Eliminados, pero la mayoría de sus atributos y enlaces se borran (Objeto Reciclado). Después del período de tombstoneLifetime (también es de 180 días de forma predeterminada, pero puede aumentarlo), el objeto se elimina por completo de AD durante una limpieza automática y no se puede restaurar (solo puede restaurar dicho objeto desde una copia de seguridad del controlador de dominio AD).

Papelera de reciclaje de Active Directory

La papelera de reciclaje de AD está disponible en Active Directory a partir del nivel funcional de Windows Server 2008 R2. En versiones anteriores de Windows Server, también puede restaurar objetos AD, pero requiere un conjunto complejo de acciones utilizando herramientas especiales:

ntdsutil

(hasta la restauración autorizada desde una copia de seguridad de AD en el modo de restauración del servicio de directorio) o

ldp.exe

Además, con la Papelera de reciclaje de AD no perderá los atributos de los objetos ni la pertenencia a grupos.

Compruebe el nivel funcional del bosque AD (en mi ejemplo, es Windows2016Forest):

Get-ADForest |Select-Object forestmode

Este comando y los siguientes requieren la instalación del módulo Active Directory para PowerShell.

Asegúrese de que la Papelera de reciclaje de AD esté habilitada para su dominio (está deshabilitada de manera predeterminada):

Get-ADOptionalFeature “Recycle Bin Feature” | select-object name,EnabledScope

Si el valor EnabledScope no está vacío, significa que la papelera de reciclaje de Active Directory está habilitada para su dominio.

Si desea habilitar la Papelera de reciclaje de Active Directory, use el cmdlet Enable-ADOptionalFeature:

Enable-ADOptionalFeature -Identity ‘CN=Recycle Bin Feature,CN=Optional Features,CN=Directory Service,CN=Windows NT,CN=Services,CN=ConfigurationDC=a-d,DC=com’ -Scope ForestOrConfigurationSet -Target ‘a-d.site’

Nota. La papelera de reciclaje de AD debe estar habilitada antes de eliminar un objeto del dominio. Después de habilitar la función Papelera de reciclaje de Active Directory, no puede deshabilitarla.

¿Cómo restaurar una cuenta de usuario eliminada en Active Directory?

Intentemos eliminar un usuario de AD y luego restaurarlo desde la Papelera de reciclaje de AD.

Con el cmdlet Get-ADUser, muestre el valor del atributo IsDeleted de un usuario (está vacío):

get-aduser jsanti -Properties *| Select-Object IsDeleted,whenDeleted

Luego elimine la cuenta de usuario:

Remove-ADUser jsanti

Para encontrar una cuenta de usuario eliminada en la Papelera de reciclaje de AD, use el cmdlet Get-ADObject con el parámetro IncludeDeletedObjects:

Get-ADObject -Filter 'Name -like "*santi*"' -IncludeDeletedObjects

Como puede ver, el usuario se encontró en el contenedor Objetos eliminados.

Compruebe el valor del atributo IsDeleted, el contenedor en el que se encontraba el usuario antes de eliminarlo (LastKnownParent) y la lista de grupos de los que el usuario era miembro:

Get-ADObject -Filter 'Name -like "*santi*"' -IncludeDeletedObjects -Properties *| select-object Name, sAMAccountName, LastKnownParent, memberOf, IsDeleted|fl

Si no recuerda el nombre del usuario que ha eliminado, puede mostrar una lista completa de objetos disponibles en la Papelera de reciclaje de Active Directory:

Get-ADObject -filter {Deleted -eq $True -and ObjectClass -eq "user"} -includeDeletedObjects

Para restaurar una cuenta de usuario, copie el valor de ObjectGUID y ejecute el siguiente comando:

Restore-ADObject -Identity ‘aa704b7f-b003-4a21-8f62-53c75caa67b2

O puede restaurar un usuario usando su SAMAccountName:

Get-ADObject -Filter 'SAMAccountName -eq "jsanti"' -IncludeDeletedObjects | Restore-ADObject

Abra la consola ADUC (

dsa.msc

) y asegúrese de que la cuenta de usuario se haya restaurado en la misma unidad organizativa en la que se encontraba antes de la eliminación.

También puede restaurar un objeto de cuenta de usuario eliminado desde la consola gráfica del Centro de administración de Active Directory.

  1. ejecutar el

    dsac.exe

    ;

  2. Busque el contenedor Objetos eliminados. Contiene todos los objetos AD eliminados;

  3. Haga clic en el objeto que desea restaurar y seleccione Restaurar (para restaurar en el contenedor original) o Restaurar en (para restaurar en otra unidad organizativa de AD).

De la misma manera, puede restaurar un grupo eliminado, una computadora o un contenedor en Active Directory.

Para restaurar un grupo de seguridad eliminado:

Get-ADObject -Filter { Deleted -eq $True -and ObjectClass -eq 'group' -and Name -like '*Allow*' } -IncludeDeletedObjects| Restore-ADObject -verbose

Para restaurar una computadora:

Get-ADObject -Filter { Deleted -eq $True -and ObjectClass -eq 'computer' -and Name -like '*PCCA-sdd9302*' } -IncludeDeletedObjects| Restore-ADObject -verbose

¿Cómo restaurar una unidad organizativa eliminada y sus objetos anidados mediante PowerShell?

Por ejemplo, tenía la opción Proteger el objeto contra la eliminación accidental deshabilitada para una unidad organizativa y ocasionalmente ha eliminado la unidad organizativa con todos sus usuarios, equipos y grupos.

En primer lugar, debe restaurar la unidad organizativa raíz:

Get-ADObject -Filter {Deleted -eq $True -and ObjectClass -eq 'organizationalunit' -and Name -like '*California*'} -IncludeDeletedObjects| Restore-ADObject

Luego restaure todas las unidades organizativas anidadas:

Get-ADObject -Filter {Deleted -eq $True -and ObjectClass -eq 'organizationalunit' -and LastKnownParent -eq 'OU=California,DC=a-d,DC=com'} -IncludeDeletedObjects| Restore-ADObject

Después de eso, puede restaurar todos los objetos eliminados en las OU usando el parámetro LastKnownParent (usuarios, computadoras, grupos y contactos):

Get-ADObject -Filter {Deleted -eq $True} -IncludeDeletedObjects -Properties *| Where-Object LastKnownParent -like '*OU=California,DC=a-d,DC=com'| Restore-ADObject

Artículos relacionados