A Microsoft forneceu vários cmdlets Active Directory PowerShell com Windows Server 2008 R2 (e mais recentes) que muito simplifique as tarefas que antes exigiam a junção de longas linhas de código envolvendo ADSI.
Em um cliente Windows, instale as Ferramentas de administração de servidor remoto (RSAT) e verifique se o módulo Active Directory PowerShell está instalado.
Em um servidor Windows (2008 R2 ou mais recente), execute os seguintes comandos em um console do PowerShell (como um Adminsitrator):
Import-Module ServerManager; Add-WindowsFeature RSAT-AD-PowerShell
Aqui está meu (pobre) exemplo ADSI:
Aqui está a mesma coisa com o cmdlet AD PowerShell:
Módulo de importação ActiveDirectory
$ UserID = “JoeUser”
Get-ADUser $ UserID –property *
Observe que com o PowerShell versão 3 e mais recente, você não precisa executar a primeira linha, pois o Powershell irá identifique o módulo necessário e carregue-o automaticamente.
Depois de carregar o módulo Active Directory PowerShell, você pode fazer coisas interessantes, como navegar no AD como um sistema de arquivos
Encontrando comandos úteis (cmdlets):
Descubra os módulos PowerShell disponíveis: Get-Module -ListAvailable
Descubra cmdlets em um PowerShell módulo: Get-Command -module ActiveDirectory
PowerShell AD Module Cmdlets:
- Windows Server 2008 R2: 76 cmdlets
- Windows Server 2012: 135 cmdlets
- Windows Server 2012 R2: 147 cmdlets
- Windows Server 2016: 147 cmdlets
(Get-Command -module ActiveDirectory).count
Encontrando funções de operação única mestre flexível do Active Directory (FSMO):
Módulo do Active Directory:
Chamadas do .NET:
Cmdlet do módulo do Active Directory PowerShell Exemplos:
Get-RootDSE obtém informações sobre o servidor LDAP (o controlador de domínio) e as exibe. Há algumas informações interessantes nos resultados, como qual sistema operacional o DC está executando.
Get-ADForest fornece informações sobre o Active Directory floresta em que está o computador em que o comando está sendo executado.
Get-ADDomain fornece informações sobre o domínio atual em que você está.
Get-ADDomainController fornece informações do computador específicas para controladores de domínio.
Este cmdlet facilita a localização de todos os controladores de domínio em um site específico ou executando uma versão do sistema operacional.
Get-ADComputer fornece muito do que você gostaria de saber sobre um objeto de computador no AD.
Execute com “-Prop *” para mostrar todas as propriedades padrão.
Get-ADUser fornece a maioria do que você deseja saber sobre um usuário AD.
Execute com “-Prop *” para mostrar todas as propriedades padrão.
Get-ADGroup fornece informações sobre um Grupo AD. Encontre todos os grupos de segurança executando:
Get-ADGroup -Filter {GroupCategory -eq ‘Security}
Get- ADGroupMember enumera e retorna os membros do grupo. Use o parâmetro Recursive para incluir todos os membros de grupos aninhados.
Get-ADGroupMember ‘Administrators’ -Recursive
Estes cmdlets são úteis para identificar situações que anteriormente exigiam a compra de um produto ou script personalizado.
Os exemplos a seguir localizam computadores e usuários inativos (obsoletos) – contas que não alteraram suas senhas nos últimos 10 dias. Observe que este é um exemplo de laboratório. Para verificações do mundo real, mude para 60 a 90 dias para computadores e 180 – 365 dias para usuários.
Encontre computadores inativos.
Encontre usuários inativos.
Enumerar relações de confiança do domínio
Obtenha informações do site do AD.
Observe que o módulo do Windows 2012 inclui cmdlet para sites (Get-ADReplicationSite *).
Fazer backup dos GPOs do domínio
Observe que isso requer que o módulo PowerShell da Política de Grupo esteja instalado, que é separado do módulo Active Directory.
Encontre contas de serviço AD Kerberos
Inventory Domain Controllers
Get-ADDomainController – filter * | `selecione o nome do host, IPv4Address, IsGlobalCatalog, IsReadOnly, OperatingSystem | `format-table -auto
Get-ADReplicationPartnerMetadata (Windows Server 2012 e mais recente)
Get-ADReplicationPartnerFailure fornece informações sobre o status de falha de replicação DC.