Neste tutorial, vamos ver como eliminar um utilizador de um diretório Active Directory no PowerShell.
Remove-ADUserÀ primeira vista, isto é bastante fácil utilizando o Cmdlet, mas vai ver que há várias formas de o fazer.
Como já deve ter percebido, para eliminar um utilizador, vamos utilizar o CmdletRemove-ADUsere o parâmetro-Identitypara indicar o utilizador a eliminar.
-Identity permitirá identificar o utilizador através de um dos seguintes identificadores:
- sAMAccountName
- objectSid
- objectGUID
- DN (Nome Distinto)
A eliminação de um utilizador requer confirmação; para evitar a confirmação, basta adicionar isto ao comando:
-Confirm $True
Neste tutorial, vamos trabalhar (ou melhor, eliminar) o utilizador Pierre Kiroule.


Como pode ver, o sAMAccountName e o UserPrincipalName (UPN) são diferentes.
Os comandos a seguir devem ser adaptados ao seu ambiente.
Vamos lá, vamos iniciar a eliminação do utilizador. Aqui está o comando:
Remove-ADUser -Identity pierre
É bastante simples, não é?
Se quiserem criar um script, podem armazenar o utilizador numa variável:
$User = "pierre"
Remove-ADUser -Identity $UserO problema com o sAMAccountName é que este pode ser truncado se for demasiado longo… o que pode ser incómodo. Se quiser usar o UPN, que muitas vezes é idêntico ao endereço de e-mail, terá de proceder de forma diferente.
Primeiro, é necessário procurar o utilizador com o comandoGet-ADUsere concatená-lo com Remove-ADUser.
Eliminar um utilizador com o UserPrincipalName:
Get-ADUser -Filter {UserPrincipalName -eq "[email protected]"} | Remove-ADUserPara criar o início de um script:
$UPN = "[email protected]"
Get-ADUser -Filter {UserPrincipalName -eq $UPN} | Remove-ADUserOutro elemento a ter em conta, quando se pretende eliminar um objeto no Active Directory, é a proteção contra eliminações acidentais. Se esta estiver ativada, receberá uma mensagem de erro a indicar que não tem autorização.
Com o Powershell, vamos concatenar vários comandos para desativar a proteção e, em seguida, eliminar o utilizador.
Usando o sAMAccountName:
Get-ADUser pierre | Set-ADObject -ProtectedFromAccidentalDeletion:$false -PassThru | Remove-ADUser -Confirm:$false -VerboseUsando o UserPrincipalName
Get-ADUser -Filter {UserPrincipalName -eq "[email protected]"} | Set-ADObject -ProtectedFromAccidentalDeletion:$false -PassThru | Remove-ADUser -Confirm:$false -VerboseAgora já sabe como eliminar um utilizador doActive Directory com o PowerShell.
Para aprofundar, eis o início de um script:
<#
Delete User From AD
#>
param(
$User = ""
)
Import-Module ActiveDirectory
function ValidEmail {
param([string]$Email)
try {
$null = [mailaddress]$Email
return $true
}
catch {
return $false
}
}
if( $User -eq ""){
$User = Read-Host "User to delete ?"
}
$IsUPN = ValidEmail($User)
if($IsUPN){
Get-ADUser -Filter {UserPrincipalName -eq $User} | Set-ADObject -ProtectedFromAccidentalDeletion:$false -PassThru | Remove-ADUser -Confirm:$false -Verbose
}else{
Get-ADUser $User | Set-ADObject -ProtectedFromAccidentalDeletion:$false -PassThru | Remove-ADUser -Confirm:$false -Verbose
}
