Gastzugriff für einzelne Teams deaktivieren in Microsoft Teams
Um in Microsoft Teams das Risiko von Datenabfluss und Wildwuchs durch frei hinzufügbare Gäste zu minimieren, ist es oft sinnvoll, den Gastzugriff zu deaktivieren.
Was aber, wenn die Zusammenarbeit mit Externen zentraler Bestandteil Ihrer Arbeit ist?
Vielleicht möchten Sie nur den Gastzugriff für einige bestimmte Teams deaktivieren, statt für alle Teams gleichzeitig?
Oder umgekehrt, der Gastzugriff soll für einzelne Teams erlaubt sein, aber generell deaktiviert?
In solchen Fällen können Sie den Gastzugriff auf das einzelne Team bzw. die dazugehörige M365 Gruppe individuell steuern. Bei der Deaktivierung können neue Gäste dann nicht mehr hinzugefügt werden. Bestehende Gäste bleiben aber in der Gruppe bzw. im Team, sie werden hierdurch nicht entfernt.
Hinweis: Es gibt natürlich auch die Möglichkeit, den Gastzugriff generell zu erlauben, aber sehr detailliert zu bestimmen, was Gäste tun können und was nicht. Lesen Sie dazu unseren Blogpost Microsoft Teams Gastzugriff (Teil 1).
Umgesetzt wird die individuelle Steuerung des Gastzugriffs entweder mit Sensitivity Labels, die jedem Team bzw. jeder Gruppe zugeordnet sind, oder mit einem PowerShell Script, mit dem Sie die Gruppeneinstellungen einer einzelnen Gruppe ändern können. Auch externe Tools wie der External User Manager sind oft eine praktische Lösung. (Achtung: die verknüpfte SharePoint-Seite hinter dem Team verfügt wiederum über eigene Steuerelemente für den Gastzugriff.)
In diesem Blogartikel wollen wir uns die Methode über das PowerShell Script genauer ansehen.
Grundsätzliche Informationen zum Start mit PowerShell finden Sie in den Microsoft Docs, u.a. hier:
- https://learn.microsoft.com/de-de/powershell/scripting/learn/ps101/01-getting-started
- https://learn.microsoft.com/de-de/microsoft-365/enterprise/connect-to-microsoft-365-powershell
Gastzugriff-Einstellungen über PowerShell
Sie benötigen globale Administratorrechte für die Umsetzung sowie die aktuelle Preview Version von Azure Active Directory PowerShell for Graph (Modul AzureADPreview).
- Wenn Sie das PowerShell AzureADPreview-Modul neu installieren möchten, verwenden Sie „Install-module AzureADPreview“ um die Vorschauversion zu installieren. Bitte beachten Sie, dass die Vorschauversion und die allgemein verfügbare Version („General Availability“) nicht gleichzeitig installiert sein dürfen. Weitere Informationen dazu finden Sie im Microsoft Dok Installieren des Azure AD-Moduls.
- Wenn Sie die General Availability Version des Azure AD PowerShell-Moduls (AzureAD) installiert haben, müssen Sie diese zunächst deinstallieren, indem Sie „Uninstall-Module AzureAD“ in Ihrer PowerShell-Sitzung ausführen. Anschließend installieren Sie die Preview-Version wie oben beschrieben.
- Wenn Sie eine Preview-Version bereits installiert haben, führen Sie „Install-Module AzureADPreview“ aus, um sicherzustellen, dass es sich um die neueste Version dieses Moduls handelt.
Führen Sie dann in Ihrer PowerShell-Sitzung das folgende Script aus. Mit Get-AzureADGroup rufen Sie über Microsoft Graph eine Gruppe ab. Ändern Sie dabei <GroupName> zu dem Namen der Gruppe, für die Sie den Gastzugriff sperren möchten. Mit $settingsCopy[“AllowToAddGuests”]=$False deaktivieren wir hierbei den Gastzugriff.
$GroupName = "<GroupName>"
Connect-AzureAD
$template = Get-AzureADDirectorySettingTemplate | ? {$_.displayname -eq "group.unified.guest"}
$settingsCopy = $template.CreateDirectorySetting()
$settingsCopy["AllowToAddGuests"]=$False
$groupID= (Get-AzureADGroup -SearchString $GroupName).ObjectId
New-AzureADObjectSetting -TargetType Groups -TargetObjectId $groupID -DirectorySetting $settingsCopy
Um zu überprüfen, ob das Script korrekt ausgeführt wurde, führen Sie das folgende Script aus:
Get-AzureADObjectSetting -TargetObjectId $groupID -TargetType Groups | fl Values
Wenn alles korrekt ausgeführt wurde, erhalten Sie das folgende Ergebnis:
Values : {class SettingValue {
Name: AllowToAddGuests
Value: False
}
}
Um die Einstellung rückgängig zu machen und den Gastzugriff wieder zu aktivieren, führen Sie einfach nochmals das obige Script aus, nur dass diesmal AllowToAddGuests auf $True gesetzt wird. (Bitte ändern Sie wieder <GroupName> zu dem Namen der Gruppe, für die Sie den Gastzugriff aktivieren möchten.)
$GroupName = "<GroupName>"
Connect-AzureAD
$template = Get-AzureADDirectorySettingTemplate | ? {$_.displayname -eq "group.unified.guest"}
$settingsCopy = $template.CreateDirectorySetting()
$settingsCopy["AllowToAddGuests"]=$True
$groupID= (Get-AzureADGroup -SearchString $GroupName).ObjectId
$id = (get-AzureADObjectSetting -TargetType groups -TargetObjectId $groupID).id
Set-AzureADObjectSetting -TargetType Groups -TargetObjectId $groupID -DirectorySetting $settingsCopy -id $id
Wenn Sie eine einfachere Methode als PowerShell suchen, um den Gastzugriff für einzelne Teams zu kontrollieren, empfehlen wir den External User Manager. Unsere Apps sind genau dafür gebaut, Ihnen die volle Kontrolle über einzelne Teams zu geben.
Mit dem External User Manager minimieren Sie nicht nur das Risiko durch frei hinzufügbare Gäste, sondern können diese außerdem Dokumente wie z.B. NDAs unterzeichnen lassen und stellen so sicher, dass Gäste rechtlich korrekt in Ihr System eingebunden sind. Zusätzlich kann der External User Manager regelmäßig prüfen, ob die Gäste weiterhin Zugriff benötigen oder aus Ihrer Umgebung entfernt werden können. Ein großer Schritt in Richtung mehr Microsoft 365 Security also.
Head of Marketing & Sales bei Solutions2Share – Florian Pflanz verfügt über 6 Jahre M365-Erfahrung und war an zahlreichen Projekten zur Microsoft Teams Governance beteiligt. In über 200 Workshops hat er umfangreiches Wissen und Best Practices zu Microsoft Teams und den Managementanforderungen von Unternehmen gesammelt.