Verwalten von Sicherheitsgruppen mit PowerShell

Dieser Artikel gilt sowohl für Microsoft 365 Enterprise als auch für Office 365 Enterprise.

Sie können PowerShell für Microsoft 365 als Alternative zum Microsoft 365 Admin Center zum Verwalten von Sicherheitsgruppen verwenden.

In diesem Artikel wird das Auflisten, Erstellen, Ändern von Einstellungen und Entfernen von Sicherheitsgruppen beschrieben.

Wenn für einen Befehlsblock in diesem Artikel Variablenwerte angegeben werden müssen, führen Sie die folgenden Schritte aus.

  1. Kopieren Sie den Befehlsblock in die Zwischenablage, und fügen Sie ihn in Editor oder powerShell Integrated Script Environment (ISE) ein.
  2. Geben Sie die Variablenwerte ein, und entfernen Sie die Zeichen "<" und ">".
  3. Führen Sie die Befehle im PowerShell-Fenster oder in der PowerShell ISE aus.

Informationen zum Verwalten der Gruppenmitgliedschaft mit PowerShell finden Sie unter Verwalten der Sicherheitsgruppenmitgliedschaft .

Verwalten von Sicherheitsgruppen mit Microsoft Graph PowerShell

Hinweis

Das Azure Active Directory-Modul wird durch das Microsoft Graph PowerShell SDK ersetzt. Sie können das Microsoft Graph PowerShell-SDK verwenden, um auf alle Microsoft Graph-APIs zuzugreifen. Weitere Informationen finden Sie unter Erste Schritte mit dem Microsoft Graph PowerShell-SDK.

Stellen Sie zunächst eine Verbindung mit Ihrem Microsoft 365-Mandanten her.

Für das Verwalten von Sicherheitsgruppen ist der Berechtigungsbereich Group.ReadWrite.All oder eine der anderen Berechtigungen erforderlich, die auf der Graph-API Referenzseite "SubscribedSkus auflisten" aufgeführt sind. Einige Befehle in diesem Artikel erfordern möglicherweise unterschiedliche Berechtigungsbereiche. In diesem Fall wird dies im entsprechenden Abschnitt notiert.

Connect-Graph -Scopes Group.ReadWrite.All

Auflisten Ihrer Gruppen

Verwenden Sie diesen Befehl, um alle Ihre Gruppen aufzulisten.

Get-MgGroup -All

Verwenden Sie diese Befehle, um die Einstellungen einer bestimmten Gruppe anhand ihres Anzeigenamens anzuzeigen.

$groupName="<display name of the group>"
Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName }

Erstellen einer neuen Gruppe

Verwenden Sie diesen Befehl, um eine neue Sicherheitsgruppe zu erstellen.

Connect-MgGraph -Scopes "Group.Create"
New-MgGroup -Description "<group purpose>" -DisplayName "<name>" -MailEnabled:$false -SecurityEnabled -MailNickname "<email name>"

Anzeigen der Einstellungen einer Gruppe

Zeigen Sie die Einstellungen der Gruppe mit diesen Befehlen an.

$groupName="<display name of the group>"
Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName } | Select-Object *

Entfernen einer Sicherheitsgruppe

Verwenden Sie diese Befehle, um eine Sicherheitsgruppe zu entfernen.

$groupName="<display name of the group>"
$group = Get-MgGroup -Filter "displayName eq '$groupName'"
Remove-MgGroup -GroupId $group.Id

Verwalten der Besitzer einer Sicherheitsgruppe

Verwenden Sie diese Befehle, um die aktuellen Besitzer einer Sicherheitsgruppe anzuzeigen.

$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "GroupMember.Read.All"

# Display group owners
Get-MgGroupOwner -GroupId (Get-MgGroup | Where-Object { $_.DisplayName -eq $groupName }).Id

Verwenden Sie diese Befehle, um den aktuellen Besitzern einer Sicherheitsgruppe ein Benutzerkonto anhand des Benutzerprinzipalnamens (UPN) hinzuzufügen.

$userUPN="<UPN of the user account to add>"
$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "User.ReadBasic.All"

# Get the group and user
$group = Get-MgGroup -Filter "displayName eq '$groupName'"
$userId = (Get-MgUser -Filter "userPrincipalName eq '$userUPN'").Id

# Add the user as an owner to the group
$newGroupOwner =@{
  "@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
  }

New-MgGroupOwnerByRef -GroupId $group.Id -BodyParameter $newGroupOwner

Verwenden Sie diese Befehle, um den aktuellen Besitzern einer Sicherheitsgruppe ein Benutzerkonto anhand seines Anzeigenamens hinzuzufügen.

$userName="<Display name of the user account to add>"
$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "Directory.Read.All", "User.ReadBasic.All"

# Get the group and user
$group = Get-MgGroup -All | Where-Object { $_.DisplayName -eq $groupName }
$userId = (Get-MgUser -All | Where-Object { $_.DisplayName -eq $userName }).Id

# Add the user as an owner to the group
$newGroupOwner =@{
  "@odata.id"= "https://graph.microsoft.com/v1.0/users/$userId"
  }

New-MgGroupOwnerByRef -GroupId $group.Id -BodyParameter $newGroupOwner

Verwenden Sie diese Befehle, um ein Benutzerkonto nach seinem UPN aus den aktuellen Besitzern einer Sicherheitsgruppe zu entfernen.

$userUPN="<UPN of the user account to remove>"
$groupName="<display name of the group>"

# Connect to Microsoft Graph
Connect-MgGraph -Scopes "Group.ReadWrite.All", "Directory.ReadWrite.All"

# Get the group and user
$group = Get-MgGroup -Filter "displayName eq '$groupName'" | Select-Object -First 1
$user = Get-MgUser -Filter "userPrincipalName eq '$userUPN'" | Select-Object -First 1

# Remove the user from the group
Remove-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $user.Id

Verwenden Sie diese Befehle, um ein Benutzerkonto anhand seines Anzeigenamens aus den aktuellen Besitzern einer Sicherheitsgruppe zu entfernen.

$userName="<Display name of the user account to remove>"
$groupName="<display name of the group>"
$group = Get-MgGroup | Where-Object { $_.DisplayName -eq $groupName }
$user = Get-MgUser | Where-Object { $_.DisplayName -eq $userName }

Remove-MgGroupOwnerByRef -GroupId $group.Id -DirectoryObjectId $user.Id

Siehe auch

Verwalten von Microsoft 365-Benutzerkonten, -Lizenzen und -Gruppen mit PowerShell

Verwalten von Microsoft 365 mit PowerShell

Erste Schritte mit PowerShell für Microsoft 365