Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel enthält Beispiele für die Verwendung von PowerShell zur Verwaltung von Gruppen in Microsoft Entra ID (Teil von Microsoft Entra). Darüber hinaus erfahren Sie, wie das Microsoft Graph PowerShell-Modul eingerichtet wird. Zunächst müssen Sie das Microsoft Graph PowerShell-Modul herunterladen.
Installieren Sie das Microsoft Graph PowerShell-Modul
Verwenden Sie die folgenden Befehle, um das MgGroup PowerShell-Modul zu installieren:
PS C:\Windows\system32> Install-module Microsoft.Graph
Überprüfen Sie mithilfe des folgenden Befehls, ob das Modul verwendet werden kann:
PS C:\Windows\system32> Get-Module -Name "*graph*"
ModuleType Version PreRelease Name ExportedCommands
---------- ------- ---------- ---- ----------------
Script 1.27.0 Microsoft.Graph.Authentication {Add-MgEnvironment, Connect-MgGraph, Disconnect-MgGraph, Get-MgContext…}
Script 1.27.0 Microsoft.Graph.Groups {Add-MgGroupDriveListContentTypeCopy, Add-MgGroupDriveListContentTypeCopyF…
Sie können die Cmdlets jetzt im Modul verwenden. Eine vollständige Beschreibung der Cmdlets im Microsoft Graph-Modul finden Sie in der Onlinereferenzdokumentation für Microsoft Graph PowerShell.
Herstellen einer Verbindung mit dem Verzeichnis
Bevor Sie Gruppen mithilfe der Azure AD PowerShell-Cmdlets verwalten können, müssen Sie Ihre PowerShell-Sitzung mit dem Verzeichnis verbinden, das verwaltet werden soll. Verwenden Sie den folgenden Befehl:
PS C:\Windows\system32> Connect-MgGraph -Scopes "Group.ReadWrite.All"
Das Cmdlet fordert Sie zur Eingabe der Anmeldeinformationen auf, die Sie für den Zugriff auf Ihr Verzeichnis verwenden möchten. In diesem Beispiel verwenden wir karen@drumkit.onmicrosoft.com für den Zugriff auf das Demoverzeichnis. Das Cmdlet gibt eine Bestätigung zurück, die angibt, dass die Sitzung mit Ihrem Verzeichnis verbunden wurde:
Welcome To Microsoft Graph!
Sie können die MgGraph-Cmdlets nun zum Verwalten von Gruppen in Ihrem Verzeichnis verwenden.
Abrufen von Gruppen
Mit dem Get-MgGroups-Cmdlet können Sie vorhandene Gruppen aus Ihrem Verzeichnis abrufen.
Um alle Gruppen innerhalb des Verzeichnisses abzurufen, verwenden Sie das Cmdlet ohne Parameter:
PS C:\Windows\system32> Get-MgGroup -All
Das Cmdlet gibt alle Gruppen innerhalb des verbundenen Verzeichnisses zurück.
Zum Abrufen einer bestimmten Gruppe verwenden Sie den GroupId-Parameter und geben die ObjektID der Gruppe an:
PS C:\Windows\system32> Get-MgGroup -GroupId 5e3eba05-6c2b-4555-9909-c08e997aab18 | fl
Das Cmdlet gibt nun die Gruppe zurück, deren objectID-Wert mit dem eingegebenen Wert des Parameters übereinstimmt:
AcceptedSenders :
AllowExternalSenders :
AppRoleAssignments :
AssignedLabels :
AssignedLicenses :
AutoSubscribeNewMembers :
Calendar : Microsoft.Graph.PowerShell.Models.MicrosoftGraphCalendar
CalendarView :
Classification :
Conversations :
CreatedDateTime : 14-07-2023 14:25:49
CreatedOnBehalfOf : Microsoft.Graph.PowerShell.Models.MicrosoftGraphDirectoryObject
DeletedDateTime :
Description : Sales and Marketing
DisplayName : Sales and Marketing
Id : f76cbbb8-0581-4e01-a0d4-133d3ce9197f
IsArchived :
IsAssignableToRole :
IsSubscribedByMail :
LicenseProcessingState : Microsoft.Graph.PowerShell.Models.MicrosoftGraphLicenseProcessingState
Mail : SalesAndMarketing@M365x64647001.onmicrosoft.com
MailEnabled : True
MailNickname : SalesAndMarketing
RejectedSenders :
RenewedDateTime : 14-07-2023 14:25:49
SecurityEnabled : True
Mithilfe des Parameters „-filter“ können Sie nach einer bestimmten Gruppe suchen. Dieser Parameter verwendet eine ODATA-Filterklausel und gibt alle Gruppen zurück, die dem Filter entsprechen. Beispiel:
PS C:\Windows\system32> Get-MgGroup -Filter "DisplayName eq 'Intune Administrators'"
DeletionTimeStamp :
ObjectId : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
ObjectType : Group
Description : Intune Administrators
DirSyncEnabled :
DisplayName : Intune Administrators
LastDirSyncTime :
Mail :
MailEnabled : False
MailNickName : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
OnPremisesSecurityIdentifier :
ProvisioningErrors : {}
ProxyAddresses : {}
SecurityEnabled : True
Hinweis
In den MgGroup PowerShell-Cmdlets ist der OData-Abfragestandard implementiert. Weitere Informationen finden Sie unter $filter im Artikel OData-Systemabfrageoptionen mit dem OData-Endpunkt.
Hier haben Sie ein Beispiel, das zeigt, wie sie alle Gruppen abrufen, für die keine Ablaufrichtlinie angewendet wurde
Connect-MgGraph -Scopes 'Group.Read.All'
Get-MgGroup -ConsistencyLevel eventual -Count groupCount -Filter "NOT (expirationDateTime+ge+1900-01-01T00:00:00Z)" | Format-List Id
In diesem Beispiel wird dasselbe wie im vorherigen Beispiel ausgeführt, aber das Skript exportiert auch die Ergebnisse in CSV.
Connect-MgGraph -Scopes 'Group.Read.All'
Get-MgGroup -ConsistencyLevel eventual -Count groupCount -Filter "NOT (expirationDateTime+ge+1900-01-01T00:00:00Z)" | Format-List Id |Export-Csv -Path {path} -NoTypeInformation
In diesem letzten Beispiel wird gezeigt, wie Sie nur Gruppen abrufen, die zu Teams gehören
Get-MgGroup -ConsistencyLevel eventual -Count groupCount -Filter "NOT (expirationDateTime+ge+1900-01-01T00:00:00Z) and resourceProvisioningOptions/any(p:p eq 'Team')" | Format-List Id, expirationDateTime, resourceProvisioningOptions
Erstellen von Gruppen
Zum Erstellen einer neuen Gruppe in Ihrem Verzeichnis verwenden Sie das Cmdlet „New-MgGroup“. Dieses Cmdlet erstellt eine neue Sicherheitsgruppe „Marketing“:
$param = @{
description="My Demo Group"
displayName="DemoGroup"
mailEnabled=$false
securityEnabled=$true
mailNickname="Demo"
}
New-MgGroup @param
Aktualisieren von Gruppen
Zum Aktualisieren einer vorhandenen Gruppe verwenden Sie das MgGroup-Cmdlet. In diesem Beispiel ändern wir die DisplayName-Eigenschaft der Gruppe "Intune-Administratoren". Zunächst finden wir die Gruppe mithilfe des Cmdlets Get-MgGroup und filtern sie mithilfe des DisplayName-Attributs:
PS C:\Windows\system32> Get-MgGroup -Filter "DisplayName eq 'Intune Administrators'"
DeletionTimeStamp :
ObjectId : aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb
ObjectType : Group
Description : Intune Administrators
DirSyncEnabled :
DisplayName : Intune Administrators
LastDirSyncTime :
Mail :
MailEnabled : False
MailNickName : 4dd067a0-6515-4f23-968a-cc2ffc2eff5c
OnPremisesSecurityIdentifier :
ProvisioningErrors : {}
ProxyAddresses : {}
SecurityEnabled : True
Als Nächstes ändern wir die Description-Eigenschaft in den neuen Wert "Intune-Geräteadministratoren":
PS C:\Windows\system32> Update-MgGroup -GroupId 958d212c-14b0-43d0-a052-d0c2bb555b8b -Description "Demo Group Updated"
Wenn wir nun erneut nach der Gruppe suchen, sehen wir, dass die Eigenschaft „Description“ mit dem neuen Wert aktualisiert wurde:
PS C:\Windows\system32> Get-MgGroup -GroupId 958d212c-14b0-43d0-a052-d0c2bb555b8b | select displayname, description
DisplayName Description
----------- -----------
DemoGroup Demo Group Updated
Löschen von Gruppen
Zum Löschen von Gruppen aus Ihrem Verzeichnis verwenden Sie das Remove-MgGroup Cmdlet wie folgt:
PS C:\Windows\system32> Remove-MgGroup -GroupId 958d212c-14b0-43d0-a052-d0c2bb555b8b
Verwalten der Gruppenmitgliedschaft
Hinzufügen von Mitgliedern
Wenn Sie einer Gruppe neue Mitglieder hinzufügen möchten, verwenden Sie das Cmdlet „New-MgGroupMember“. Mit diesem Befehl wird der Gruppe „Intune Administrators“ aus dem vorherigen Beispiel ein Mitglied hinzugefügt:
PS C:\Windows\system32> New-MgGroupMember -GroupId f76cbbb8-0581-4e01-a0d4-133d3ce9197f -DirectoryObjectId a88762b7-ce17-40e9-b417-0add1848eb68
Der -GroupId-Parameter ist die Gruppen-ObjectID. Wir müssen die ObjectID der verwendeten Gruppe angeben. Die -DirectoryObjectId ist die ObjectID des Benutzers, den wir als Gruppenmitglied hinzufügen möchten.
Abrufen von Mitgliedern
Zum Abrufen der vorhandenen Mitglieder einer Gruppe verwenden Sie das Cmdlet „Get-MgGroupMember“, wie in diesem Beispiel gezeigt:
PS C:\Windows\system32> Get-MgGroupMember -GroupId 2c52c779-8587-48c5-9d4a-c474f2a66cf4
Id DeletedDateTime
-- ---------------
aaaaaaaa-bbbb-cccc-1111-222222222222
bbbbbbbb-cccc-dddd-2222-333333333333
Entfernen von Mitgliedern
Um das Mitglied zu entfernen, das der Gruppe zuvor hinzugefügt wurde, verwenden Sie das Cmdlet „Remove-MgGroupMember“, wie hier gezeigt:
PS C:\Windows\system32> Remove-MgGroupMemberByRef -DirectoryObjectId 00aa00aa-bb11-cc22-dd33-44ee44ee44ee -GroupId 2c52c779-8587-48c5-9d4a-c474f2a66cf4
Überprüfen von Mitgliedern
Die Gruppenmitgliedschaften eines Benutzers können mithilfe des Cmdlets „Select-MgGroupIdsUserIsMemberOf“ überprüft werden. Dieses Cmdlet verwendet als Parameter die Objekt-ID des Benutzers, für den die Gruppenmitgliedschaften überprüft werden sollen, sowie eine Liste mit Gruppen, für die die Mitgliedschaften überprüft werden sollen. Die Liste der Gruppen muss in Form einer komplexen Variable vom Typ „Microsoft.Open.AzureAD.Model.GroupIdsForMembershipCheck“ angegeben werden. Daher müssen wir zunächst eine Variable dieses Typs erstellen:
Get-MgUserMemberOf -UserId 00aa00aa-bb11-cc22-dd33-44ee44ee44ee
Id DisplayName Description GroupTypes AccessType
-- ----------- ----------- ---------- ----------
5dc16449-3420-4ad5-9634-49cd04eceba0 demogroup demogroup {Unified}
Der zurückgegebene Wert ist eine Liste mit Gruppen, in denen dieser Benutzer Mitglied ist. Sie können diese Methode auch anwenden, um die Mitgliedschaft von Kontakten, Gruppen oder Dienstprinzipale bei einer vorgegebenen Liste von Gruppen mithilfe von Select-MgGroupIdsContactIsMemberOf, Select-MgGroupIdsGroupIsMemberOf oder Select-MgGroupIdsServicePrincipalIsMemberOf zu überprüfen.
Deaktivieren der Gruppenerstellung durch Benutzer
Sie können verhindern, dass Standardbenutzer Sicherheitsgruppen erstellen. Das Standardverhalten in Microsoft Online Directory Services (MSODS) besteht darin, Standardbenutzern das Erstellen von Gruppen zu ermöglichen, unabhängig davon, ob die Self-Service-Gruppenverwaltung (Self-Service Group Management, SSGM) ebenfalls aktiviert ist. Die SSGM-Einstellung kontrolliert das Verhalten nur im Portal „Meine Gruppen“.
So deaktivieren Sie die Gruppenerstellung für Standardbenutzer:
Überprüfen Sie, ob Standardbenutzer Gruppen erstellen dürfen:
PS C:\> Get-MgBetaDirectorySetting | select -ExpandProperty values Name Value ---- ----- NewUnifiedGroupWritebackDefault true EnableMIPLabels false CustomBlockedWordsList EnableMSStandardBlockedWords false ClassificationDescriptions DefaultClassification PrefixSuffixNamingRequirement AllowGuestsToBeGroupOwner false AllowGuestsToAccessGroups true GuestUsageGuidelinesUrl GroupCreationAllowedGroupId AllowToAddGuests true UsageGuidelinesUrl ClassificationList EnableGroupCreation trueWenn sie
EnableGroupCreation : Truezurückgibt, können Standardbenutzer Gruppen erstellen. So deaktivieren Sie das Feature:Install-Module Microsoft.Graph.Beta.Identity.DirectoryManagement Import-Module Microsoft.Graph.Beta.Identity.DirectoryManagement $params = @{ TemplateId = "62375ab9-6b52-47ed-826b-58e47e0e304b" Values = @( @{ Name = "EnableGroupCreation" Value = "false" } ) } Connect-MgGraph -Scopes "Directory.ReadWrite.All" New-MgBetaDirectorySetting -BodyParameter $params
Verwalten von Gruppenbesitzern
Zum Hinzufügen von Besitzern zu einer Gruppe verwenden Sie das Cmdlet „New-MgGroupOwner“:
PS C:\Windows\system32> New-MgGroupOwner -GroupId 0e48dc96-3bff-4fe1-8939-4cd680163497 -DirectoryObjectId 92a0dad0-7c9e-472f-b2a3-0fe2c9a02867
Der -GroupId-Parameter ist die ObjectID der Gruppe, der ein Besitzer hinzugefügt werden soll. Die -DirectoryObjectId ist die ObjectID des Benutzers oder Dienstprinzipals, den wir als Besitzer hinzufügen möchten.
Zum Abrufen der Besitzer einer Gruppe verwenden Sie das Get-MgGroupOwner-Cmdlet:
PS C:\Windows\system32> Get-MgGroupOwner -GroupId 0e48dc96-3bff-4fe1-8939-4cd680163497
Das Cmdlet gibt die Liste der Besitzer (Benutzer und Dienstprinzipale) für die angegebene Gruppe zurück:
Id DeletedDateTime
-- ---------------
8ee754e0-743e-4231-ace4-c28d20cf2841
85b1df54-e5c0-4cfd-a20b-8bc1a2ca7865
4451b332-2294-4dcf-a214-6cc805016c50
Zum Entfernen eines Besitzers aus einer Gruppe verwenden Sie das Cmdlet „Remove-MgGroupOwnerByRef“:
PS C:\Windows\system32> Remove-MgGroupOwnerByRef -GroupId 0e48dc96-3bff-4fe1-8939-4cd680163497 -DirectoryObjectId 92a0dad0-7c9e-472f-b2a3-0fe2c9a02867
Reservierte Aliase
Wenn Sie eine Gruppe erstellen, geben Benutzer einen mailNickname oder Alias an, den das System als Teil der E-Mail-Adresse der Gruppe verwendet. Die Erstellung von Gruppen mit einem der hoch privilegierten E-Mail-Aliasnamen, die aufgelistet sind, ist auf Microsoft Entra-Globaladministratoren beschränkt.
- abuse
- admin
- administrator
- hostmaster
- majordomo
- postmaster
- root
- secure
- security
- ssl-admin
- webmaster
Rückschreiben von Gruppen in das lokale Active Directory
Heutzutage werden viele Gruppen immer noch im lokalen Active Directory verwaltet. Als Reaktion auf Anforderungen zum Synchronisieren von Cloudgruppen mit der lokalen Instanz ist das Gruppenrückschreiben für Microsoft Entra ID mit der Microsoft Entra-Cloudsychronisierung jetzt verfügbar.
Wichtig
Die Vorschau von Group Writeback v2 in Microsoft Entra Connect Sync ist veraltet und wird nicht mehr unterstützt.
Sie können Microsoft Entra Cloud Sync verwenden, um Cloudsicherheitsgruppen für lokale Active Directory Domain Services (AD DS) bereitzustellen.
Wenn Sie Group Writeback v2 in Microsoft Entra Connect Sync verwenden, sollten Sie Ihren Synchronisierungsclient in Microsoft Entra Cloud Sync verschieben. Um zu überprüfen, ob Sie berechtigt sind, zu Microsoft Entra Cloud Sync zu wechseln, verwenden Sie den Benutzersynchronisierungs-Assistenten.
Wenn Sie Microsoft Cloud Sync nicht wie empfohlen vom Assistenten verwenden können, können Sie Microsoft Entra Cloud Sync parallel mit Microsoft Entra Connect Sync ausführen. In diesem Fall können Sie Microsoft Entra Cloud Sync nur ausführen, um Cloudsicherheitsgruppen für lokale AD DS bereitzustellen.
Wenn Sie Microsoft 365-Gruppen für AD DS bereitstellen, können Sie "Group Writeback v1" weiterhin verwenden.
Nächste Schritte
Weitere Microsoft Entra ID PowerShell-Dokumentation finden Sie unter Microsoft Entra Cmdlets.