1

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.

 

 

Gruppenmitgliedschaften kopieren – von User1 auf User2

Um die Gruppenmitgliedschaften von einem User zum Andren zu kopieren, kann folgendes PowerShell Script benutzt werden. Hier werden die Gruppen nicht einfach kopiert, sondern erst alle alten Gruppen gelöscht und dann die neuen Gruppen kopiert.

<#
.SYNOPSIS
  Gruppenmitgliedschaften kopieren
.DESCRIPTION
  Kopiert die Gruppenmitgliedschaften von einem Benutzer zu einem Anderen
.NOTES
  Version:        1.0
  Author:         www.ITnator.net | Johannes Huber
  Creation Date:  11.01.2018
.EXAMPLE
#>


Import-Module ActiveDirectory

# Referenz-Benutzer 1
$user_1 = 'user1'
# Benutzer 2 wird angepasst
$user_2 = 'user2'

# Gruppenzugehoerigkeit vergleichen
$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 "Benutzer $user_2 aus Gruppe entfernen '$($_.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 "Benutzer $user_2 zu Gruppe hinzufügen '$($_.Name)'." -F Green; Add-ADGroupMember $_.Name -Members $user_2 -Confirm:$false}

In diesem PowerShell-Script müssen nur folgende Zeilen angepasst werden:

  • Zeile 17 = Referenz-Benutzer, dessen AD-Gruppen kopiert werden sollen
  • Zeile 19 = Benutzer, welcher die Gruppen des anderen Benutzers bekommen soll
Johannes Huber
 

In seiner Freizeit macht Johannes nichts lieber, als für ITnator Beiträge zu schreiben. Input bekommt er hierfür von Problemen in der IT Administration von Servern, Clients und vielen weiteren IT Komponenten.

Click Here to Leave a Comment Below 1 comments