AD-Gruppen umbenennen – Powershell-Skript

Skript Erklärung

Das Skript sucht im Active Directory nach vorhandenen Gruppen mit der Bezeichnung „-ABC“ im Gruppennamen und ersetzt bei allen zutreffenden Gruppen den Name,CN und SamAccountName durch den neuen Gruppennamen.

Beispiel

Vorher: Gruppe-TEST-ABC
Nachher: Gruppe-TEST-XYZ

#
#
# Autor: Jan Weis
# Funktion: Umbenennen von AD-Gruppen
#
#

Write-Host 'Gruppen werden erfasst...' -NoNewline
$Gruppen = Get-ADGroup -Filter {Name -like '*-ABC'}
Write-Host '[OK]' -ForegroundColor Green

foreach ($obj in $Gruppen)
{
    try
    {
        $Name = (($obj).Name).Replace('ABC','XYZ')
        Set-ADGroup -Identity $obj -SamAccountName $Name 
        Rename-ADObject -Identity $obj -NewName $Name 
        Write-Host "[+] $($obj.Name) wurde erfolgreich in $Name umbenannt." -ForegroundColor Green
    }
    catch
    {
        Write-Host "[ERR] $($obj.Name) wurde nicht umbenannt.`n$_" -ForegroundColor Red
    }
}

2 Kommentare zu „AD-Gruppen umbenennen – Powershell-Skript“

  1. Friedhelm Rocker

    So funktioniert es Super…;-)

    Write-Host ‚Gruppen werden erfasst…‘ -NoNewline
    Get-ADGroup -Filter * -SearchBase „OU=Groups,OU=Staging,DC=YourDomain,DC=local“ | Select Name, DistinguishedName | Export-csv -path c:\migration\Haushalt\group.csv -NoTypeInformation
    $csv = Import-Csv -Path c:\migration\Haushalt\group.csv

    Write-Host ‚[OK]‘ -ForegroundColor Green

    foreach ($group in $csv)
    {
    try
    {
    $Name = (($group).Name).Replace(‚ABC‘,’DEF‘)
    Set-ADGroup -Identity $group.DistinguishedName -SamAccountName $Name
    Rename-ADObject -Identity $group.DistinguishedName -NewName $Name
    Write-Host „[+] $($group.Name) wurde erfolgreich in $Name umbenannt.“ -ForegroundColor Green
    }
    catch
    {
    Write-Host „[ERR] $($group.Name) wurde nicht umbenannt.`n$_“ -ForegroundColor Red
    }
    }

    1. So kann man es natürlich auch machen 😉

      Ich persönlich versuche so wenig wie möglich zu ex- und importieren, um somit Fehler im Vorgang zu vermeiden, den Vorgang nicht zu verlangsamen und die Möglichkeit nicht zu verlieren weitere Objekteigenschaften zu verarbeiten.

      Danke für Dein Feedback und noch einen schönen Tag 🙂

Kommentarfunktion geschlossen.