Como administrador de sistema Windows, gerenciar grupos do Active Directory (AD) é provavelmente algo que você faz todos os dias. Embora você possa usar o complemento MMC de Usuários e Computadores do Active Directory (ADUC), o que acontece quando você precisa gerenciar grupos em vários domínios ou automatizar tarefas de gerenciamento de grupos? É aí que o PowerShell se torna útil.
No tutorial prático a seguir, você aprenderá como usar o PowerShell para gerenciar grupos do AD como um profissional. Você aprenderá a consultar grupos, criar novos e modificar grupos existentes usando exemplos práticos do mundo real.
Pré-requisitos
Se você deseja acompanhar este tutorial, certifique-se de ter os seguintes pré-requisitos:
- Um computador Windows (Windows 10/11 ou Windows Server) associado a um domínio do Active Directory
- O módulo do PowerShell para Active Directory instalado
- Uma conta de usuário com permissões para gerenciar grupos do AD
Consultando Grupos do AD com PowerShell
Vamos começar com um cenário comum – você é o novo administrador de TI em uma empresa e precisa auditar a estrutura de grupos do AD. Seu gerente quer saber quais grupos existem em diferentes departamentos. O cmdlet Get-ADGroup
será seu melhor amigo aqui.
Encontrando Grupos pelo Nome
Talvez a tarefa mais simples seja encontrar grupos que contenham texto específico em seu nome. Por exemplo, para encontrar todos os grupos com “Vendas” no nome:
Get-ADGroup -Filter 'Name -like "Sales"'
Os asteriscos (*) são curingas, correspondendo a qualquer caractere antes ou depois de “Sales”. Este comando retornará todos os grupos que tenham “Sales” em qualquer lugar no nome.
Filtrando por Tipo de Grupo
Talvez você só queira ver grupos de segurança (não grupos de distribuição). Você pode adicionar critérios de filtro adicionais usando o operador -and
:
Get-ADGroup -Filter 'Name -like "Sales" -and GroupCategory -eq "Security"'
Agora você verá apenas grupos de segurança que tenham “Sales” em seu nome.
Buscando em OUs Específicas
Precisa encontrar grupos em uma unidade organizacional (OU) específica? Use o parâmetro SearchBase
:
Get-ADGroup -Filter * -SearchBase 'OU=Engineering,DC=company,DC=local'
Este comando encontra todos os grupos dentro da OU de Engenharia e suas OUs filhas.
Encontrando Grupos Criados Recentemente
Quer ver quais grupos foram criados após uma certa data? Filtre pelo atributo whenCreated
:
Get-ADGroup -Filter 'whenCreated -ge "2023-01-01"'
Isso retorna todos os grupos criados em ou após 1º de janeiro de 2023.
Criando Novos Grupos AD
Agora vamos olhar para a criação de novos grupos. Talvez sua empresa esteja se reestruturando e você precise criar grupos para novos departamentos.
Criando um Grupo de Segurança
Veja como criar um novo grupo de segurança para funcionários de suporte de TI:
New-ADGroup -Name "IT_Support" `
-GroupScope Global `
-GroupCategory Security `
-Description "Group for IT support staff" `
-Path "OU=IT,DC=company,DC=local"
Isso cria um grupo de segurança global chamado “IT_Support” na unidade organizacional de TI.
Criando um Grupo de Distribuição
Precisa de um grupo de distribuição por e-mail? Basta alterar alguns parâmetros:
New-ADGroup -Name "Marketing_News" `
-GroupScope DomainLocal `
-GroupCategory Distribution `
-Description "Group for receiving marketing updates" `
-Path "OU=Marketing,DC=company,DC=local"
Criando Múltiplos Grupos de Uma Vez
Tem múltiplos grupos semelhantes para criar? Use um loop:
$regions = "North", "South", "East", "West"
foreach ($region in $regions) {
New-ADGroup -Name "Sales_$region" `
-GroupScope Global `
-GroupCategory Security `
-Description "Sales team for $region region" `
-Path "OU=Sales,DC=company,DC=local"
}
Modificando Grupos Existentes
As coisas mudam nas organizações. Os grupos precisam ser renomeados, descrições atualizadas e escopos modificados. Vamos ver como lidar com essas tarefas.
Renomeando Grupos
Para renomear um grupo, você precisará alterar tanto seu nome quanto seu samAccountName:
# Primeiro renomeie o objeto do grupo
Get-ADGroup EngineeringTeam | Rename-ADObject -NewName TechTeam
# Em seguida, atualize o samAccountName
Get-ADGroup EngineeringTeam | Set-ADGroup -SamAccountName TechTeam
Atualizando Descrições de Grupos
Precisa atualizar a descrição de um grupo? Uma linha com Set-ADGroup
:
Get-ADGroup TechTeam | Set-ADGroup -Description 'Technical Team for Engineering Projects'
Alterando o Escopo do Grupo
Se você precisar mudar o escopo de um grupo (como de Global para Universal):
Get-ADGroup TechTeam | Set-ADGroup -GroupScope Universal
Dicas Profissionais
Aqui estão algumas dicas para tornar sua gestão de grupos do AD ainda mais eficiente:
-
- Sempre use `-Filter` em vez de `-Identity` ao consultar vários grupos – é mais eficiente
-
- Lembre-se de que o escopo do grupo não pode ser alterado se o grupo tiver membros – remova os membros primeiro
-
- Use o parâmetro `-WhatIf` ao fazer alterações para visualizar o que aconteceria
- Sempre teste suas alterações de grupo em um ambiente de não produção primeiro
Resumo
Agora você deve ter uma base sólida para gerenciar grupos do AD com PowerShell. Enquanto o snap-in Usuários e Computadores do Active Directory é ótimo para tarefas pontuais, o PowerShell oferece o poder de automatizar e gerenciar grupos em grande escala.
Lembre-se – os exemplos mostrados aqui são apenas o começo. Os cmdlets do AD do PowerShell são incrivelmente poderosos e flexíveis. À medida que você se sentir mais confortável com esses fundamentos, poderá construir soluções mais complexas para atender às necessidades de sua organização.
Precisa aprender mais sobre PowerShell do Active Directory? Confira nossos outros tutoriais: