Usando o módulo PowerShell do ActiveDirectory, você pode consultar grupos AD com Get-AdGroup, adicionar, atualizar e remover grupos e membros de grupos. Neste post do blog, você vai aprender um pouco sobre os cmdlets do PowerShell do grupo Active Directory com uma tonelada de exemplos para referência.
Cmdlets de Grupo do Active Directory
Assim que instalar o módulo PowerShell do ActiveDirectory, você encontrará alguns cmdlets disponíveis para gerenciar grupos.
Cmdlet Name | Description |
Add-ADGroupMember | Used to add members to an AD group. |
Add-ADPrincipalGroupMembership | Used to add an AD principal to AD groups. |
Get-ADGroup | Used to return a group or groups from AD. |
Get-ADGroupMember | Used to return the members of an AD group. |
Get-ADPrincipalGroupMembership | Used to get the groups an AD principal is a member of. |
New-ADGroup | Used to create a new AD group. |
Remove-ADGroup | Used to delete an AD group. |
Remove-ADGroupMember | Used to remove members from an AD group. |
Remove-ADPrincipalGroupMembership | Used to remove an AD principal from AD groups. |
Set-ADGroup | Used to set the properties of an AD group. |
Usando esses cmdlets e um pouco de kung-fu do PowerShell, você pode gerenciar todos os aspectos do grupo Active Directory com PowerShell.
Encontre os membros de um grupo com Get-ADGroupMember
O cmdlet Get-AdGroupMember
retorna todos os membros de um grupo.
Alternativamente, você pode fazer referência à propriedade memberOf
em um usuário específico usando o cmdlet Get-Aduser
. Para uma revisão sobre como construir filtros, confira Aprendendo Filtros de Diretório Ativo e LDAP no PowerShell.
Dois exemplos estão abaixo.
Isso retorna uma coleção de objetos ADPrincipal.
Exporte os membros de um grupo para um arquivo CSV
Isso exporta o primeiro nome, sobrenome e endereço de e-mail de cada usuário. Passe os resultados de Get-ADGroupMember
para Get-ADUser
porque esses são objetos ADPrincipal que não possuem todas as propriedades que os objetos ADUser têm.
Observe o uso do parâmetro
NoTypeInformation
doExport-CSV
para garantir que o arquivo CSV seja compatível com outras aplicações.
Encontre grupos sem membros com Get-ADGroup
Use Get-AdGroup
para encontrar grupos usando filtros. Dois exemplos abaixo.
Crie um novo grupo de segurança com New-ADGroup
Você cria um novo grupo de segurança usando o comando New-AdGroup
.
Se nenhum parâmetro Path
for fornecido, o novo grupo será criado no contêiner de Usuários. O escopo do grupo deve ser Local do Domínio
, Global
ou Universal
.
Crie um novo grupo de distribuição com New-ADGroup
Use New-AdGroup
novamente para criar um grupo de distribuição. Desta vez, escolha uma Categoria de Grupo
de Distribuição
.
Adicione membros a um grupo com Add-ADGroupMember
Adicionar usuários a um grupo do Active Directory com PowerShell pode ser feito usando o cmdlet Add-AdGroupMember
ou o cmdlet Add-ADPrincipalGroupMembership
.
Este comando especifica o grupo como o Identidade.
Este comando especifica o principal do AD como o Identidade.
Escreva para a propriedade Notes
de um grupo com Set-AdGroup
O campo rotulado Notes no ADUC é representado pela propriedade Info
retornada de Get-AdGroup
.
Primeiro, encontre o grupo a ser alterado, defina a propriedade Info
e depois use Set-AdGroup
para aplicar a alteração no AD.
Remova membros do grupo com Remove-ADGroupMember
Como todos os cmdlets do PowerShell, você pode usar o parâmetro Confirm
para ser solicitado antes que uma alteração seja feita. Esse comportamento também se aplica aos cmdlets Remove-AdGroupMember
e Remove-ADPrincipalGroupMembership
.
Abaixo, você pode remover membros do grupo sem confirmação.
Ou você pode optar por remover membros do grupo com confirmação usando o parâmetro Confirm
.
Exclua um grupo com Remove-ADGroup
Exclua um grupo sem confirmação e com confirmação.
Renomeie um grupo com Rename-ADObject
Você pode renomear um grupo com um comando usando Rename-ADObject
.
Obtenha o número de grupos com Get-ADGroup
Você precisa encontrar o total de grupos retornados via Get-AdGroup
? Use a propriedade Count
.
Encontre grupos com um gerente com Get-ADGroup
Filtre todos os grupos que têm um gerente atribuído a eles com Get-AdGroup
e um filtro LDAP bem elaborado.
Não há um filtro PowerShell equivalente para isso.
Encontre grupos gerenciados por um usuário específico com Get-ADGroup
Aprimore suas habilidades de filtro e encontre todos os grupos gerenciados por um usuário específico usando um filtro do PowerShell ou LDAP.
Defina o gerente do grupo com Set-ADGroup
A guia Gerenciado por no ADUC para grupos permite que você designe alguém responsável pela adesão ao grupo. Isso não significa automaticamente que o gerente pode alterar a adesão ao grupo. Para que isso seja possível, as permissões de segurança precisam ser alteradas na propriedade Membro do grupo em questão.
A ação de marcar a caixa O gerente pode atualizar a lista de membros para um grupo no Active Directory Users and Computers (ADUC) altera as permissões para permitir isso.

Use Set-ADGroup
para definir o atributo GerenciadoPor:
Atualizar a lista de controle de acesso requer alguns passos adicionais. O trecho de código a seguir concede à usuária Kristin Diaz a capacidade de gerenciar a adesão ao grupo. bf9679c0-0de6-11d0-a285-00aa003049e2 é o GUID para a propriedade Membro
do grupo.
Se Kristin também for definida como gerente do grupo, a caixa de seleção será marcada. Caso contrário, Kristin ainda poderá gerenciar a adesão ao grupo, mas não será mostrada no ADUC como gerente.
Encontre senhas vazadas e inseguras em seu Active Directory verificando a lista de senhas do NCSC.
Encontre todos os grupos de segurança
Liste todos os grupos de segurança no Active Directory com o PowerShell, limitando sua consulta apenas aos grupos de segurança com estes dois exemplos. Qual é o filtro LDAP, você pergunta? Aprenda tudo sobre filtros LDAP.
Encontre grupos de distribuição
Use o PowerShell para listar Grupos de Diretório Ativo (distribuição), excluindo grupos de segurança com estes dois exemplos.
Encontre a filiação de grupo para um usuário com Get-ADPrincipalGroupMembership
Observe que este comando requer acesso a um catálogo global.
Encontre grupos em uma Unidade Organizacional (OU), sem incluir sub-OUs
Seja granular usando o parâmetro SearchBase
para limitar sua pesquisa a uma única OU com estes dois exemplos.
Encontre grupos em uma Unidade Organizacional (OU), incluindo sub-OUs
Precisa encontrar todos os grupos em OUs filhas? Use um SearchScope
de SubTree
.
Resumo
Isso conclui nossa demonstração prática de gerenciamento de grupos AD com o PowerShell. Pegue alguns desses exemplos, experimente em sua organização e comece a automatizar!