Como um administrador de sistema Windows, gerenciar grupos do Active Directory (AD) é provavelmente algo que você faz todos os dias. Enquanto você poderia usar o complemento MMC Active Directory Users and Computers (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.
Neste tutorial prático, você aprenderá como usar o PowerShell para gerenciar grupos do AD como um profissional. Você aprenderá como consultar grupos, criar novos e modificar grupos existentes usando exemplos práticos do mundo real.
Pré-requisitos
Se você quiser acompanhar este tutorial, certifique-se de ter os seguintes pré-requisitos:
- Um computador Windows (Windows 10/11 ou Windows Server) unido a um domínio do Active Directory
- O módulo do Active Directory do PowerShell 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 dos 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 quaisquer caracteres antes ou depois de “Vendas”. Este comando retornará todos os grupos que tenham “Vendas” em qualquer parte de seu nome.
Filtrando por Tipo de Grupo
Talvez você queira ver apenas 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 “Vendas” em seu nome.
Pesquisando 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
Deseja ver quais grupos foram criados após uma determinada data? Filtrar pelo atributo whenCreated
:
Get-ADGroup -Filter 'whenCreated -ge "2023-01-01"'
Isto retorna todos os grupos criados em ou após 1 de janeiro de 2023.
Criando Novos Grupos AD
Agora vamos ver como criar novos grupos. Talvez sua empresa esteja se reestruturando e você precise criar grupos para novos departamentos.
Criando um Grupo de Segurança
Aqui está como criar um novo grupo de segurança para a equipe 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"
Isto cria um grupo de segurança global chamado “Suporte_TI” na unidade organizacional de TI.
Criando um Grupo de Distribuição
Precisa de um grupo de distribuição de 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 vários 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, as descrições atualizadas e os escopos modificados. Vamos ver como lidar com essas tarefas.
Renomeando Grupos
Para renomear um grupo, você precisará alterar tanto seu nome quanto o 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 a gestão do seu grupo 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 prever o que aconteceria
- Sempre teste suas alterações de grupo primeiro em um ambiente de não-produção
Resumo
Agora você deve ter uma base sólida para gerenciar grupos do AD com PowerShell. Embora o complemento Active Directory Users and Computers seja ótimo para tarefas pontuais, o PowerShell lhe dá 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 no PowerShell são incrivelmente poderosos e flexíveis. À medida que você se sentir mais confortável com esses conceitos básicos, 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: