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
Thomas Drilling arbeitet ist seit fast 30 Jahren selbständig in der IT-Welt sowohl als Consultant, als auch als Redakteur, Buchautor und Journalist für viele ehemalige und aktuelle IT-Magazine sowie Blogs.
Aktuell bestätigt sich Thomas schwerpunktmäßig als IT-Trainer für Cloud-Computing in den Bereichen Microsoft Azure, Amazon Web Services und VMware.
Thomas ist zertifizierter Microsoft-Trainer für nahe das gesamte Portfolio an Microsoft Azure Trainings. Thomas ist außerdem zertifizierter Microsoft Azure Solutions Architect Expert sowie VMware Certified Professional und wurde von VMware in den Jahren 2016 bis 2022 mit dem Blogger-Status vExpert ausgezeichnet.
Thomas führt aktuell jeden Monat zwei selbstkonziperte 4-tägigen Grundlagenkurse in Cloud Computing mit Azure durch, die sich inhaltlich bewusst von den Microsft-Kursen abheben und vorzuweise als Bootcamp in eine besonderen Lokation stattfinden. Optional kann aber aber auch remote via Microsoft Teams teilgenommen werden.
Das aktuelle Trainingsprogramm findet sich unter Azure-Trainings. Weitere Informationen und Anmeldung über sein Azure-Blog.
Verwandte Beiträge
- Azure Active Directory mit PowerShell AzureAD-Modul v2 administrieren
- Neue Policy für Authentifizierung ohne Passwort und erweiterte Web-Anmeldung für Windows 11
- Mit Windows 11 dem Azure Active Directory beitreten
- Azure Active Directory heißt künftig Entra ID, zwei Entra-Produkte kommen hinzu
- Security- und Health-Checks für Active Directory mit PowerShell-Scripts
Weitere Links