Tags: Active Directory, Azure, PowerShell
Wie beim Management des lokalen Active Directory sind die GUI-Tools zwar komfortabel, aber beispielsweise für Bulk-Operationen ineffizient. Die Alternative unter den Bordmitteln ist auch hier PowerShell. Microsoft bietet dafür ein Modul an, das alle Anforderungen beim Management von Gruppen und Benutzern erfüllt.
Die Verwaltung von Benutzern und Gruppen gehört zu den grundlegenden Tätigkeiten der Azure-AD-Administration. Zu den gängigen Aufgaben gehört es dort etwa, dass eine größere Zahl von Konten in eine neue Gruppe verschoben oder bestimmte Eigenschaften geändert werden sollen. Dies lässt sich mit PowerShell schnell und einfach erledigen.
Cloud Shell versus lokale Kommandozeile
Zunächst benötigen Sie das PowerShell-Modul für Azure AD, nicht zu verwechseln mit dem jenem für Azure bzw. Azure Resource Manager (az). Dabei gibt es zwei Möglichkeiten: Entweder man nutzt die Browser-basierte Cloud Shell im Azure-Portal oder man installiert das Modul lokal.
Entscheidet man sich für die Cloud-Shell, dann sind dort die Cmdlets für die Verwaltung von Azure AD bereits an Bord. Davon kann man sich mit
Get-Command -Module AzureAD.*
leicht überzeugen.
Die Cloud Shell bietet aber nicht den gewohnten Komfort beim Editieren der Befehlszeile.
Modul für Azure AD installieren
Falls Sie daher lieber die lokale PowerShell nutzen möchten, dann müssen Sie das Azure AD-Modul selbst installieren:
Install-Module azuread
Beachten Sie, dass die Cmdlets für Azure AD derzeit noch nicht mit der Version 7 von PowerShell funktionieren. Daher müssen Sie diese unter Windows PowerShell 5.x nutzen. Eine Verwaltung von Azure AD unter Linux oder macOS ist somit nicht möglich.
Mit Azure AD verbinden
Nach erfolgreicher Installation des Moduls können Sie sich über den Befehl
Connect-AzureAD
mit dem Azure AD verbinden. Daraufhin werden Sie zum Eingeben von Anmeldeinformationen aufgefordert. Die Authentifizierung entfällt hingegen in der Cloud Shell.
Vorhandene Gruppen auslesen
Mit
Get-AzureADGroup
listen Sie zunächst alle bestehenden Gruppen auf. Mit dem Parameter ObjectId könnten Sie auch nur Informationen zu einer spezifischen Gruppe abfragen:
Get-AzureADGroup -ObjectId <ObjectId>
Der Parameter Filter grenzt über eines der angegeben Attribute die Suche auf bestimmte Gruppen ein:
Get-AzureADGroup -Filter "DisplayName eq 'demogroup'"
Gruppe erstellen und ändern
Eine neue Gruppe erstellt man nach diesem Muster:
New-AzureADGroup -Description "Group for Demo" `
-DisplayName "demogroup2" `
-MailEnabled $false -SecurityEnabled $true `
-MailNickName "demogroup2"
Um eine Gruppe zu aktualisieren, geht man so vor:
Set-AzureADGroup -ObjectId ce8bf34a-81ad-4951-9ca3-f21659f17ca0 `
-DisplayName "Demo Group"
Das Ergebnis können Sie wieder mit Get-AzureADGroup prüfen.
Gruppe löschen
Das Löschen einer Gruppe schließlich erfolgt mit
Remove-AzureADGroup -ObjectId ce8bf34a-81ad-4951-9ca3-f21659f17ca0
Benutzer anlegen und Gruppen zuweisen
Schauen wir uns nun an, wie Sie Benutzer erstellen und in die gewünschten Gruppen verfrachten. Dazu ermittelt man zunächst den Namen der Azure-AD-Domäne und hält ihn in einer Variable fest:
$domainName = ((Get-AzureAdTenantDetail).VerifiedDomains)[0].Name
Auch das Passwort schreiben Sie am besten vorher in eine Variable:
$passwordProfile = New-Object `
-TypeName Microsoft.Open.AzureAD.Model.PasswordProfile
$passwordProfile.Password = "Pa77w-rd1234"
So können Sie dann einen neuen Benutzer anlegen:
New-AzureADUser -DisplayName 'Max Muster' `
-PasswordProfile $passwordProfile `
-UserPrincipalName "Max@$domainName" `
-AccountEnabled $true -MailNickName 'Max'
Den Erfolg des Kommandos kontrollieren Sie mit
Get-AzureADUser
Um den neuen Benutzer einer Gruppe hinzuzufügen, verwendet man das Cmdlet Add-AzureADGroupMember:
Add-AzureADGroupMember -ObjectId b7a2fa51-1b33-4c2d-88a8-9b03987cbacf -RefObjectId 425e5a38-7807-4b62-9a43-2189e54ddc44
Hierbei ist ObjectId jene der Gruppe, der Sie ein Mitglied hinzufügen möchten, und RefObjectId die ID des Nutzers, der in die Gruppe aufgenommen werden soll.
Ob Max Muster dann tatsächlich in der Gruppe ist, lässt sich so prüfen:
Get-AzureADGroupMember -ObjectId b7a2fa51-1b33-4c2d-88a8-9b03987cbacf
Gruppenbesitzer verwalten
Mit dem Cmdlet Add-AzureADGroupOwner fügen Sie einer Gruppe einen Besitzer hinzu:
Add-AzureADGroupOwner -ObjectId 85bd3754-0443-4aec-beb2-837d4465762c `
-RefObjectId 425e5a38-7807-4b62-9a43-2189e54ddc44
Auch hier bezieht sich der Parameter ObjectId auf die Gruppe und RefObjectId auf den Benutzer oder Dienstprinzipal, der zum Besitzer der Gruppe werden soll.
Für die Gegenkontrolle, also dem Abfragen des Besitzers einer Gruppe, dient das Cmdlet Get-AzureADGroupOwner:
Get-AzureADGroupOwner -ObjectId 85bd3754-0443-4aec-beb2-837d4465762c
Zusammenfassung
PowerShell ist auch beim Management von Benutzern und Gruppen im Azure AD das Mittel der Wahl. Das gilt besonders in Umgebungen mit vielen Accounts, die immer wieder Bulk-Operationen erfordern. Dabei kann man sich zwischen der Cloud Shell oder der lokalen Installation des Moduls entscheiden.
Die Cmdlets des Azure-AD-Moduls, deren Namen weitgehend selbstdokumentierend sind, eignen sich zum Abfragen des aktuellen Status, zum Hinzufügen neuer Objekte sowie zum Ändern von Konten und Gruppen.
Täglich Know-how für IT-Pros mit unserem Newsletter
Seine Themenschwerpunkte sind Virtualisierung und Cloud Computing, speziell VMware, Amazon Web Services, Google Cloud und Microsoft Azure. Thomas ist zertifizierter VMware Professional, Advanced Professional und wurde von VMware in den Jahren 2016, 2017, 2018, 2019 und 2020 mit dem Blogger-Status vExpert ausgezeichnet.
Thomas ist außerdem zertifizierter AWS Solutions Architect, Sysops Engineer und Devops Engineer sowie Microsoft Certified Azure Administrator.
Thomas führt aktuell jeden zweiten Montag einen 4-tägigen Grundlagenkurs in Cloud Computing mit AWS via Zoom-Meeting durch. Weitere Informationen und Anmeldung über sein AWS-Blog.
Ähnliche Beiträge
- Azure Active Directory mit PowerShell AzureAD-Modul v2 administrieren
- Verfügbare Azure-VMs in einer Region mit PowerShell anzeigen
- Microsoft Entra ergänzt Azure Active Directory um Berechtigungs-Management und Verified ID
- Geräte über Hybrid Join in Azure AD registrieren
- Microsoft 365 mit Intune-Compliance und Conditional Access absichern
Weitere Links