Get-ADComputer: Encontrar Unidades Organizacionais de Computadores no Active Directory

Para o cmdlet de hoje, vamos nos concentrar no Get-AdComputer. Este cmdlet é o irmão do Get-AdUser. Em vez de obter usuários do Active Directory (AD), este cmdlet encontra computadores em OUs.

Você encontrará o cmdlet Get-AdComputer no módulo PowerShell do ActiveDirectory. Se você ainda não o tiver instalado, descubra como aqui.

Os Conceitos Básicos

Se você nunca usou o cmdlet Get-AdComputer antes, certifique-se de entender os conceitos básicos. Você procurará e recuperará computadores usando os parâmetros Identity e Filter.

O Parâmetro de Identidade

No seu nível mais básico, Get-Adcomputer obtém um único objeto de computador do AD usando o parâmetro Identity. Se você tivesse um computador chamado FOO, então você forneceria esse valor conforme mostrado abaixo.

Get-AdComputer -Identity FOO

Por padrão, o cmdlet retornará apenas alguns atributos do AD. Se você quiser ver todos os atributos do AD para um computador, use o parâmetro Properties.

Ao usar um asterisco com o parâmetro Properties abaixo, o PowerShell retornará todos os atributos do AD. Mas se você quiser ver apenas alguns deles, você pode especificá-los, separados por vírgula.

Get-AdComputer -Identity FOO -Properties *

Como todos os outros parâmetros de Identidade de cmdlets do PowerShell do Active Directory, você também pode especificar um nome distinto (DN), GUID ou um SID.

O Parâmetro de Filtro

Se você precisar encontrar mais de uma conta de computador, use o parâmetro Filter. O parâmetro Filter é um parâmetro comum entre muitos comandos do ActiveDirectory. Ele permite que você especifique condições que uma conta deve atender para ser retornada.

Se não estiver usando o parâmetro Identity, você deve usar o parâmetro Filter. Se, por exemplo, você deseja encontrar todas as contas de computador no AD, você pode especificar um asterisco. O asterisco é um caractere curinga que corresponde a todas as contas de computador.

Get-AdComputer -Filter *

Talvez você precise encontrar todos os computadores que começam com a letra “F”. Nesse caso, você deve criar a sintaxe do filtro conforme mostrado abaixo.

Get-ADComputer -Filter "Name -like 'F*'"

O Parâmetro LDAPFilter

Se você é bom em filtros LDAP, também pode usar o parâmetro LDAPFilter. O filtro LDAP permite que você use a sintaxe LDAP para se concentrar exatamente no computador que está procurando. LDAPFilter pode ser usado com o parâmetro SearchBase ou por si só.

Abaixo, estou usando o filtro LDAP para encontrar todos os computadores que começam com F.

Get-ADComputer -LDAPFilter "(name=f*)"

Para obter mais informações sobre como criar filtros, confira Aprendendo Filtros de Active Directory e LDAP no PowerShell.

Encontrando Computadores em uma Unidade Organizacional

Encontrar computadores pelo nome com o parâmetro Identity ou por vários atributos do AD com o parâmetro Filter é apenas uma opção. Você também pode encontrar contas de computador pela unidade organizacional em que estão localizadas.

Get-Adcomputer possui um parâmetro SearchBase que você pode usar para limitar a pesquisa apenas a uma Unidade Organizacional (OU) e/ou todas as suas OUs filhas.

Talvez você precise encontrar todos os controladores de domínio na OU Controladores de Domínio. Você pode limitar o escopo de contas de computador retornadas apenas para essas máquinas usando o parâmetro SearchBase.

O parâmetro SearchBase define um “início” para a pesquisa. Em vez de começar a busca na raiz do domínio, ele diz ao PowerShell para começar em uma OU.

Para usar o parâmetro SearchBase, você especifica o nome distintivo (DN) de uma OU. Abaixo está um exemplo de encontrar todas as contas de computador em uma OU Controladores de Domínio em um domínio company.pri.

Get-ADComputer -Filter * -SearchBase 'OU=Domain Controllers, DC=company, DC=pri'

Obtendo Contas em OUs Filhas

Quando você usa o parâmetro SearchBase, o PowerShell só retorna contas de computador nessa OU específica. Não retornará contas de computador em nenhuma OU filha. Para fazer isso, você pode usar o parâmetro SearchScope.

O parâmetro SearchScope permite que você defina a profundidade da pesquisa a partir da OU pai. Esse parâmetro tem três valores possíveis – 0, 1 e 2. Por padrão, é definido como 0 e retornará apenas computadores na OU base.

Se você precisar pesquisar recursivamente na OU base e na OU filha imediata, pode usar o valor 1. No entanto, o valor mais comum aqui é 2, o que significa pesquisar recursivamente por todas as OUs filhas, netos e OUs mais profundas.

Get-ADComputer -Filter * -SearchBase 'OU=Domain Controllers, DC=company, DC=pri' -SearchScope 2

Resumo

Get-AdComputer é um cmdlet útil para obter informações sobre contas de computador no AD. Sua maior dificuldade não será aprender a usar Get-AdComputer, mas sim entender a sintaxe de filtragem. Se você ler o artigo de filtro vinculado acima, verá que pode ficar complicado.

Depois de dominar o filtro, você poderá facilmente obter todas as informações necessárias das contas de computador no AD!

Esses são alguns dos casos de uso mais comuns para este cmdlet. Para uma análise completa, confira a documentação da Microsoft.

Source:
https://adamtheautomator.com/get-adcomputer/