Teamerstellung für Schüler deaktivieren

Ziel ist es, dass nur Mitglieder einer Gruppe von Nutzern, z.B.: Lehrer, selbst Gruppen erstellen können. Jeder der in Microsoft 365 eine Gruppe erstellen kann, kann auch ein Team in Microsoft Teams erstellen.

Dies wollen wir den Lehrern vorbehalten. Im folgenden wird erklärt, wie man eine Microsoft 365 Sicherheitsgruppe erstellt, die die Berechtigung hat, neue Gruppen und Teams zu erstellen. Hier der Ablauf:

  1. Neue Sicherheitsgruppe im Microsoft 365 Admin Center erstellen. (z.B.: Sicherheitsgruppe mit Namen Gruppenerstellung)

Im Admincenter von Microsoft 365 eine neue Sicherheitsgruppe z.B.: „Gruppenerstellung“ erstellen:

  1. Mitglieder der Sicherheitsgruppe zuweisen.
  2. Mit Hilfe von PowerShell jedem Nutzer der Schule verbieten neue Gruppen zu erstellen.
  3. Mit Hilfe von PowerShell nur der neu erstellten Sicherheitsgruppe erlauben, neue Gruppen und Teams zu erstellen.

Um sich in PowerShell mit Microsoft 365 verbinden zu können benötigt man das AzureADPreview Modul, welches man in PowerShell zuerst installieren muss. Dazu öffnet man den PowerShell Editor: „Windows PowerShell ISE“:

und installiert das benötigte Modul:

# Mit diesem Befehlt kann man testen, ob ein Modul mit dem Namen "AzureAD..." schon installiert ist
Get-InstalledModule -Name "AzureAD*"
# Wenn dieses Modul noch fehlt, kann man es mit diesem Befehl herunterladen und installieren:
Install-Module AzureADPreview

Im Anschluss kann das eigentliche Skript ausgeführt werden:

# Verbindet sich mit Microsoft 365 -> man muss dann die Admin Zugangsdaten eingeben
AzureADPreview\Connect-AzureAD

# Name der Sicherheitsgruppe, die neue Gruppen erstellen darf
$GroupName = "Gruppenerstellung"
$AllowGroupCreation = "False"

$settingsObjectID = (Get-AzureADDirectorySetting | Where-object -Property Displayname -Value "Group.Unified" -EQ).id

if(!$settingsObjectID)
{
      $template = Get-AzureADDirectorySettingTemplate | Where-object {$_.displayname -eq "group.unified"}
      $settingsCopy = $template.CreateDirectorySetting()
      New-AzureADDirectorySetting -DirectorySetting $settingsCopy
      $settingsObjectID = (Get-AzureADDirectorySetting | Where-object -Property Displayname -Value "Group.Unified" -EQ).id
}

$settingsCopy = Get-AzureADDirectorySetting -Id $settingsObjectID

# schreibt in das DirectorySetting, dass keine Gruppen mehr erstellt werden drüfen
$settingsCopy["EnableGroupCreation"] = $AllowGroupCreation

# die oben definierte Sicherheitsgruppe bekommt die Option neue Gruppen / Teams zu erstellen
if($GroupName)
{
    $settingsCopy["GroupCreationAllowedGroupId"] = (Get-AzureADGroup -Filter "DisplayName eq '$GroupName'").objectid
}

Set-AzureADDirectorySetting -Id $settingsObjectID -DirectorySetting $settingsCopy

(Get-AzureADDirectorySetting -Id $settingsObjectID).Values

Jetzt können alle Mitglieder der Sicherheitsgruppe neue Gruppen und auch neue Teams erstellen. Wichtig ist, dass man neue Lehrer dieser Gruppe hinzufügt, da diese nur so ein eigenes Team z.B.: für die Klasse erstellen können.