X

Script PowerShell para Contar Usuários em Grupos Administrativos do Active Directory

Descrição

Este script verifica os grupos administrativos do Active Directory, conta quantos usuários pertencem a cada grupo e salva o resultado em um arquivo de log.


Script PowerShell

powershellCopiarEditar# Importa o módulo Active Directory (necessário)
Import-Module ActiveDirectory

# Define os grupos administrativos que serão verificados
$adminGroups = @(
    "Administrators", 
    "Domain Admins", 
    "Enterprise Admins", 
    "Schema Admins", 
    "Account Operators", 
    "Backup Operators", 
    "Server Operators", 
    "Print Operators"
)

# Caminho para salvar o relatório
$logPath = "C:\Logs\Admin_Groups_Scan.txt"

# Verifica se o diretório existe, caso contrário, cria
if (-not (Test-Path -Path (Split-Path $logPath))) {
    New-Item -Path (Split-Path $logPath) -ItemType Directory
}

# Limpa o arquivo de log anterior, se existir
if (Test-Path $logPath) {
    Clear-Content $logPath
}

# Adiciona cabeçalho ao log
Add-Content -Path $logPath -Value "Relatório de Contas Administrativas - $(Get-Date)"
Add-Content -Path $logPath -Value "-------------------------------------------------"

# Varre cada grupo e conta os usuários
foreach ($group in $adminGroups) {
    try {
        $users = Get-ADGroupMember -Identity $group -Recursive | Where-Object { $_.objectClass -eq "user" }
        $count = $users.Count

        # Adiciona informações ao log
        Add-Content -Path $logPath -Value "Grupo: $group | Total de usuários: $count"
        
        # Lista os usuários pertencentes ao grupo
        foreach ($user in $users) {
            Add-Content -Path $logPath -Value "   - $($user.SamAccountName)"
        }
        Add-Content -Path $logPath -Value ""
    }
    catch {
        Write-Warning "Erro ao acessar o grupo $group. Verifique se ele existe no domínio."
    }
}

# Exibe o relatório no console
Get-Content $logPath

Como Funciona o Script

  • Importa o módulo Active Directory para que os comandos de gerenciamento do AD possam ser usados.
  • Define os principais grupos administrativos a serem verificados.
  • Cria um arquivo de log em C:\Logs\Admin_Groups_Scan.txt.
  • Verifica cada grupo, conta o número de usuários e registra os detalhes.
  • Lista os usuários dentro de cada grupo, permitindo uma análise mais detalhada.
  • Exibe o resultado no console após a execução.

Como Executar o Script

  1. Abra o PowerShell como Administrador.
  2. Copie e cole o script no PowerShell.
  3. Aguarde a execução e verifique o relatório em C:\Logs\Admin_Groups_Scan.txt.

Conclusão

Este script é útil para auditorias e revisões de segurança, permitindo identificar rapidamente quais usuários pertencem a grupos administrativos no Active Directory. Se necessário, o relatório pode ser revisado para remover acessos desnecessários e melhorar a segurança.

Agora você pode monitorar e controlar os acessos administrativos do seu ambiente de forma eficiente!

luizhenriquelima:
Related Post