AD Benutzer Gruppenmitgliedschaften kopieren
Jedes Unternehmen hat ein Active Directory. Ein Active Directory ermöglicht es, ein Netzwerk entsprechend der realen Struktur des Unternehmens darzustellen. (Abteilungen, Gesellschaften, etc.) Dazu verwaltet es verschiedene Objekte wie beispielsweise Benutzer, Gruppen oder Computer. Mit Hilfe von Active Directory kann ein Administrator die Informationen der Objekte organisieren, bereitstellen und überwachen. Wenn ein neuer Benutzer angelegt wird, werden ihm in der Regel bestimmte Gruppen zugewiesen. Wenn nun ein User neu in die Abteilung kommt, möchte man die Gruppenmitgliedschaften kopieren – von User1 auf User2.
Leider funktioniert in diesem Fall „copy paste“ nicht. Man müsste die Gruppen der zwei User vergleichen. Leider ist das sehr Zeitaufwändig, wenn man mehr der Benutzer Mitglied von mehr als 10 Gruppen ist. Und das ist sehr schnell passiert 😉 .
Das kann man mit folgendem PowerShell Script umgehen.
OpenClipart-Vectors / Pixabay
Gruppenmitgliedschaften kopieren – von User1 auf User2
Um die Gruppenmitgliedschaften von einem User zum Andren zu kopieren, kann folgendes PowerShell Script benutzt werden.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | Import-Module ActiveDirectory # Referenz-Benutzer 1 $user_1 = 'user1' # Benutzer 2 wird angepasst $user_2 = 'user2' # Compare group membership $result = compare (Get-ADPrincipalGroupMembership $user_1) (Get-ADPrincipalGroupMembership $user_2) -Property Name -PassThru | ?{$_.Name -like '*'} # Remove user_2 from groups where user_1 is no member $result | ?{$_.SideIndicator -eq '=>'} | %{write-host "Removing User $user_2 from group '$($_.Name)'." -F Green ; Remove-ADGroupMember $_.Name -Members $user_2 -Confirm:$false} # Add user_2 to groups which user_1 is member $result | ?{$_.SideIndicator -eq '<='} | %{write-host "Adding User $user_2 to group '$($_.Name)'." -F Green; Add-ADGroupMember $_.Name -Members $user_2 -Confirm:$false} |