Gruppen in Azure Active Directory mit PowerShell verwalten


    Tags: , ,

    Gruppen im AAD verwaltenWie beim Management des lokalen Active Directory sind die GUI-Tools zwar komfortabel, aber beispiels­weise 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.

    Alle Cmdlets des AzureAD-Moduls in der Cloud-Shell anzeigen

    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"

    Eine Gruppe in Azure AD mit PowerShell anlegen

    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

    Gruppe in Azure AD löschen mit PowerShell

    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

    Einen Benutzer mit New-AzureADUser anlegen

    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.

    Benutzer mittels PowerShell einer Azure-AD-Gruppe hinzufügen

    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

    Gruppenbesitzer hinzufügen und anzeigen

    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 selbst­dokumentierend 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

    Wir ver­wenden Ihre Mail-Adresse nur für den Ver­sand der News­letter.
    Es erfolgt keine per­sonen­be­zogene Auswertung.

    Bild von Thomas Drilling

    Thomas Drilling arbeitet ist seit fast 30 Jahren selb­ständig in der IT-Welt sowohl als Consultant, als auch als Redakteur, Buchautor und Journalist für viele ehe­malige 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 zerti­fi­zierter Microsoft Azure Solutions Architect Expert sowie VMware Certified Professional und wurde von VMware in den Jahren 2016 bis 2022 mit dem Blogger-Status vExpert ausge­zeichnet.

    Thomas führt aktuell jeden Monat zwei selbstkonziperte 4-tägigen Grund­lagenkurse 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 Infor­mationen und Anmel­dung über sein Azure-Blog.

    Verwandte Beiträge

    Weitere Links