voltar
Automação11/07/20267 min

Onboarding no Active Directory: de 20 minutos para 40 segundos

Um script de PowerShell que cria o utilizador, grupos, home folder e mailbox a partir de uma linha de CSV.

PowerShellActive DirectoryWindows Server

Criar utilizadores à mão é o tipo de tarefa que parece rápida e não é: são vários cliques, várias consolas e a garantia de que um dia alguém esquece um grupo.

Uma fonte de verdade

O RH preenche um CSV com nome, departamento e cargo. O departamento decide OU, grupos e template de permissões — nada é decidido pelo técnico no momento.

powershell
$map = @{
  "Producao"  = @{ OU = "OU=Producao,OU=Users,DC=empresa,DC=local"; Groups = @("GG_Producao","GG_Impressoras") }
  "Financeiro" = @{ OU = "OU=Financeiro,OU=Users,DC=empresa,DC=local"; Groups = @("GG_Financeiro","GG_ERP") }
}

Import-Csv .\novos.csv | ForEach-Object {
  $cfg  = $map[$_.Departamento]
  $sam  = ("{0}.{1}" -f $_.Nome.Substring(0,1), $_.Apelido).ToLower()

  New-ADUser -Name "$($_.Nome) $($_.Apelido)" `
    -SamAccountName $sam `
    -UserPrincipalName "$sam@empresa.local" `
    -Path $cfg.OU `
    -AccountPassword (ConvertTo-SecureString $_.PassInicial -AsPlainText -Force) `
    -ChangePasswordAtLogon $true -Enabled $true

  Add-ADPrincipalGroupMembership -Identity $sam -MemberOf $cfg.Groups
  Write-Host "OK -> $sam" -ForegroundColor Green
}

O que ficou de fora do script

  • Nada de permissões directas em ficheiros — só grupos.
  • Log de cada execução para ficheiro, com data e operador.
  • Modo -WhatIf obrigatório na primeira passagem de cada CSV.
Automatizar não é escrever o script mais esperto; é remover a decisão humana do passo repetitivo.

Continuar a ler

relacionados