In diesem Artikel:
Kategorie: AD , Microsoft Exchange Server , PowerShell Tags: Active Directory Powershell: foreach , Get-ADObject , Get-Aduser , LDAPFilter , Set-ADObject1. Funktionsweise des Skripts
Das Skript ermittelt den bisherigen und den neuen Vorgesetzten in Active Directory, sucht alle Benutzer mit dem alten Vorgesetzten und aktualisiert deren manager
-Attribut auf den neuen Vorgesetzten. Abschließend wird das Ergebnis überprüft.
PowerShell-Skript zur Aktualisierung des Vorgesetzten:
#Bisherigen Vorgesetzten ermitteln
$altermanagerDN = (Get-ADUser SamAccountName).DistinguishedName
#Neuen Vorgesetzten ermitteln
$neuerManagerDN = (Get-ADUser SamAccountName).DistinguishedName
#User ermitteln
$users = Get-ADObject -LDAPFilter "(manager=$altermanagerDN)"
#Vorgesetzten ändern
foreach ($user in $users) {Set-ADObject -Identity $user.DistinguishedName -Replace @{manager=$neuerManagerDN}}
#Überprüfung des Ergebnisses
Get-ADObject -LDAPFilter "(manager=$neuermanagerDN)" -Properties Name, SamAccountName, Manager
2. Erklärung des Skripts
- Ermittlung der alten und neuen Vorgesetzten
- Mit
Get-ADUser
wird der Distinguished Name (DN) der aktuellen und neuen Vorgesetzten abgerufen.
- Mit
- Suche nach betroffenen Benutzern
Get-ADObject -LDAPFilter "(manager=$altermanagerDN)"
sucht alle Benutzer, die dem alten Vorgesetzten unterstellt sind.
- Aktualisierung des
manager
-Attributs- Die
Set-ADObject
-Funktion ersetzt für jeden Benutzer den bisherigen Vorgesetzten durch den neuen.
- Die
- Überprüfung der Änderungen
- Mit
Get-ADObject -LDAPFilter "(manager=$neuerManagerDN)" -Properties Name, SamAccountName, Manager
wird überprüft, ob die Änderungen korrekt angewendet wurden.
- Mit