Habilitando Active Directory Recycle Bin utilizando PowerShell

Introdução

O Active Directory Recycle Bin é uma ferramenta do Windows Server 2008 R2 que proporciona a habilidade de recuperar objetos previamente excluídos, como faz a lixeira do Windows. Quando temos o Recycle Bin habilitado, podemos restaurar um objeto com todos os seus atributos intactos. Por exemplo, restaurando um usuário ele voltará para seu grupo original e terá todos os acessos que tinha antes de ser excluído.

Saiba que o Active Directory Recycle Bin está desabilitado quando instalamos o Windows Server 2008 R2 e para habilitá-lo devemos elevar o functional level de nossa floresta (caso necessário) para que seja um ambiente Windows Server 2008 R2. Note também que após habilitarmos o Active Directory Recyble Bin não poderemos desabilitá-lo depois.

Após excluirmos um objeto no Active Directory com o Recycle Bin habilitado, este objeto ficará em estado que chamaremos de “Objeto Excluído”. O objeto ficará neste estado até que o prazo definido expire, então passará para o estado “Objeto Reciclado” até que este prazo expire e o objeto seja fisicamente excluído do sistema. O tempo de vida de um objeto excluído é, por definição, nulo. Isto faz com que se use o valor do estado reciclado que, por definição, também é nulo. Quando o estado reciclado é nulo, usa-se o tempo de 180 dias. Por fim, o tempo total que o objeto (após ser excluído) fica guardado no Recycle Bin é de 180 dias, por definição. Podemos mudar estes valores, mas este assunto não será coberto neste artigo.

Habilitando o Recycle Bin

Para habilitar o Recycle Bin, siga os passos a seguir.

1. Após certificar-se que sua floresta é um ambiente Windows Server 2008 R2, abra o PowerShell em Start , Administrative Tools , selecione o Active Directory PowerShell com o botão direito do mouse e então em Run as Administrator. Forneça usuário e senha para prosseguir.

2. Na tela de comandos do PowerShell, digite o seguinte e pressione Enter depois de cada comando:

Import-Module ActiveDirectory

Get-Module

Get-Command *ad*

Devem-se obter os seguintes resultados:

1

3. Logo após, digite o comando abaixo:

Get-ADOptionalFeature –Filter {Name –Like “*”}

Verificamos que o Recycle Bin está desabilitado, pois a propriedade EnableScopes está vazia.

2

4. Para habilitar o Recycle Bin, digite o comando abaixo, onde Woodgrovebank será trocado pelo seu <ADEntity> , que é o nome do seu domínio. Neste exemplo é Woodgrovebank.com.

Enable-ADOptionalFeature “Recycle Bin Feature” –Scope Forest –Target ‘Woodgrovebank.com’

5. Confirme digitando Y e pressione Enter.

6. Para confirmar que o Recycle Bin foi habilitado, digitaremos novamente o comando do item 3, obtendo o seguinte resultado:

3

Observe que a propriedade EnableScopes agora contém informações.

Movendo objetos para o Recycle Bin

Apenas como exemplo, criamos no Active Directory Users and Computers os seguintes objetos (caso queira testar os passos, não se esqueça de desabilitar a função Protect from accidental deletion ao criar os objetos!) : um usuário com nome “John Smith” que estará na Organizational Unit (OU) Southamerica > Brazil > Users. O usuário também estará no grupo Consultants. O resultado é mostrado na figura abaixo.

4

Após criarmos os objetos, excluímos o usuário John Smith, o grupo Consultants, a OU Brazil e a OU Southamerica. Pretendemos recuperar estes objetos.

Verificando os objetos no Recycle Bin

Na primeira parte descrevemos como verificar todos os objetos no Recycle Bin e na segunda parte verificamos se um objeto específico foi excluído.

1. Para visualizar quais objetos estão no Recycle Bin, abra novamente o PowerShell e execute os seguinte comando pressionando Enter logo depois. Em DC, troque para seu domínio, nosso exemplo é Woodgrovebank.com.

Get-ADObject –SearchBase “CN=Deleted Objects,DC=Woodgrovebank,DC=Com” –ldapFilter “(objectClass=*)” -includeDeletedObjects

Obtemos o seguinte resultado, contendo os objetos que excluímos do Active Directory Users and Computers.

5

2. Para visualizar se um objeto específico se encontra no Recycle Bin, execute o comando abaixo. Neste exemplo, procuraremos o objeto usuário “John Smith” e a OU “Brazil” .

Get-ADObject –Filter {Name –Like “*John Smith*”} –SearchScope Subtree –includeDeletedObjects | Format-List

Obteremos o seguinte resultado:

6

Note que o objeto usuário John Smith possui informações em ObjectGUID. Guarde esta informação, pois usaremos esta informação para recuperar o objeto.

Abaixo está o resultado esperado quando procuramos pela OU Brazil.

7

Recuperando Objetos Excluídos

Descreveremos agora como recuperar os objetos excluídos. Lembre-se de obter o ObjectGUID do objeto que está no Recycle Bin.

1. No PowerShell, execute o comando abaixo e pressione Enter. Em <ObjectGUID> use a informação que obtemos no item anterior para o usuário “John Smith”.

Restore-ADObject –Identity <objectGUID>

Nosso exemplo resulta em uma falha. Esta falha indica que os objetos pais do nosso usuário não existem.

8

2. Para identificar os objetos pais do usuário, execute o comando abaixo. Este comando nos mostra que o usuário John Smith pertence a um objeto que também foi excluído.

Get-ADObject –Filter ‘Name –Like “*John Smith*”’ –SearchScope Subtree –includeDeletedObjects –properties lastKnownParent | Format-List

 9

3. Para restaurar o objeto OU Brazil, execute o comando abaixo trocando <ObjectGUID> pelo valor que obtivemos anteriormente. A figura abaixo ilustra os dois comandos executados em seguida.

10

Após executarmos a recuperação do objeto OU Brazil, não há necessidade de recuperar o usuário John Smith ou o grupo Consultants, já que estes faziam parte da OU em questão. Restaurando a OU, restauramos também todos os objetos nela contidos.

Todo o procedimento de recuperação de objetos também pode ser feito usando o ldp.exe.

Abraços,

Paula Maeda