Teams @ EDU

Überlegungen und Vorschläge für die Teams Implementation bei Schulen in Zeiten von #Covid19

Anlegen von Tenants

  • Beantragen des Tenants mit entsprechenden Trial Lizenzen über den Link: https://www.microsoft.com/de-de/microsoft-365/academic/compare-office-365-education-plans?market=de
  • Eine Custom Domain darf nur hinzugefügt werden wenn diese wirklich der Bildungseinrichtung zugeordnet werden kann. Wenn dies nicht der Fall ist gehen die Trial Lizenzen verloren.
  • Die A1 Lizenzen bleiben für 6 Monate im Trial bestehen, wenn die Custom Domain erfolgreich eine Bildungseinrichtung verifiziert hat werden die Lizenzen dauerhaft aktiviert.
  • Die A1 Lizenzen waren und sind dauerhaft kostenlos

Dokumentationen und hilfreiche Links

Support

Ein Concierge Service für Teams @ EDU wurde von Microsoft eingerichtet der MS Partnern eine schnelle Bearbeitung von Support-Themen rund um Teams@EDU anbietet:
EDUPartnerSupportEU@microsoft.com

Enable Teams for Students

Nach der Erstellung von einem EDU Tenant mit Trial A1 Lizenzen ist Teams standardmäßig nicht aktiviert für ‚Students‘. Im alten Admin Center muss dies zunächst enabled werden

Überlegungen zur Tenant Configuration

Einschränken der Teams Erstellung

Die Erstellung von Office365 Groups sollte eingeschränkt werden um Wildwuchs einzuschränken. Mein erster Ansatz wäre diese nur Lehrern und „zertifizierten“ Schülern zu erlauben. Das „Zertifikat“ kann z.B. durch ein einfaches Forms-Quiz von den Schülern abgelegt werden. das Quiz kann Fragen zu Mobbingvermeidung, Namensrichtlinien etc. enthalten.
Die folgende Dokumentation zeigt wie die Einschränkung per PowerShell angesetzt werden kann:
https://docs.microsoft.com/en-us/microsoft-365/admin/create-groups/manage-creation-of-groups?view=o365-worldwide

Überlegungen zur Teams Konfiguration

Private Channels: Private Kanäle sind Kanäle in Teams die nur für ein Subset von Usern des Teams freigegeben sind. Die privaten Kanäle bergen aufgrund ihrer „Neuigkeit“ noch viele administrative Hürden. Meine Empfehlung ist in einem ersten Teams Setting das erstellen von privaten Kanälen zu deaktivieren. Dies geschieht wie folgt:
TAC > Teams Policies > Global > Create private channels = Off

Teams Policies:
In Teams @ EDU sind Policy´s (Meeting, Messaging, Calling, App und Permission) Policys für verschiedene Schüler- und ein Lehrerprofil vordefiniert. Diese Policy´s werden in entsprechenden Policy Packages für die entsprechenden Usergruppen gebündelt. Das Bündel kann dann einem Teams User zugewiesen werden. In Anbetracht von #Covid19, aber auch allgemein sollten folgende Policy-Settings näher betrachtet werden:

Meeting Policies

!Hier werden Vorschläge für Richtlinien nachgereicht!

Allow scheduling private meetings: Über diese Option werden Teams User befähigt ein Teams Meeting zu eröffnen und andere dazu einzuladen. In einem Meeting kann sich in einer geschlossenen Gruppe via Voice&Video und Chat ausgetauscht werden. Es ist Quasi ein temporäres Klassenzimmer mit eigenorganisierter Teilnehmerschaft (auch ohne Lehrer). Dieses Option ist sinnvoll um z.B Schülern zu erlauben, Lerngruppen zu organisieren. Allerdings fehlt auch etwas Kontrolle über diese Gruppen da sie nach belieben erstellt werden können. Der potentielle Teilnehmerkreis kann nicht ohne weiteres (Scoped Address Book) beschränkt werden. Meine Empfehlung ist diese Option erst für Schüler ab dem Alter 16 zu aktivieren

Policy Management

Die Zuweisung von Richtlinien in Teams geschieht per Zuweisung per User. Eine gruppenbasierte Zuweisung ist nicht möglich. Für jeden Richtlinientyp (z.B. Meetingrichtlinie, Nachrichtenrichtlinie,…) gibt es eine vordefinierte Richtlinie mit dem Namen „Global“. Diese Globale Richtlinie ist die Standard-Richtlinie, d.h. neu Angelegte Benutzer werden mit dieser Richtlinie versehen. Eine neu angelegte Richtlinie kann nicht zur Standard Richtlinie gemacht werden.

Ich halte es daher für ratsam die Richtlinien „Global“ so anzupassen das sie für das Gross der Anwender passend ist. Damit wird erreicht das eine manuelle Richtlinienzuweisung nur erfolgen muss wenn einmal eine Ausnahme von diesem Standard genutzt werden muss.
Wenn es also nur zwei Benutzerrollen im Teams gibt (Lehrer / Schüler) ist die Methode mit den Richtlinien umzugehen relativ einfach. Die globalen Richtlinien werden angepasst um den Bedürfnissen für das Profil Schüler gerecht zu werden. Zusätzlich wird jeweils eine Richtlinie Lehrer erstellt die mit den entsprechenden Einstellungen für die Lehrer konfiguriert wird.

Damit hat man die Vorraussetzungen geschaffen um mit möglichst wenig administrativen Aufwand neue Schüler anzulegen. Jeder neu angelegte Benutzer im Tenant der für Teams aktiviert wird, wird mit der Richtlinie Global versehen. Damit muss nur in den selteneren Fällen das ein Lehrer angelegt wird manuell die entsprechenden Richtlinien zugewiesen werden.

Die Zuweisung von Richtlinien kann über das Teams Admin Center erfolgen. (https://admin.teams.microsoft.com). Dort ist nach anlegen eines neuen Users die einfachste Methode eine andere Richtlinie zuzuweisen über:
Users > Auswahl des Benutzers > Edit settings > Policies > Assigned Policies > Edit: Hier kann die entsprechende Richtlinie zugewiesen werden

Um die massenhafte Zuweisung von Richtlinien zu ermöglichen, haben wir ein Script erstellt das Policys anhand von Gruppen oder User-Attributen zuweisen kann.

Voraussetzungen für das Script sind die Installation von den Modulen AzureAD und SkypeOnline
Installation des AzureAD Modules:
1. Powershell als Admin öffnen
2. Installation des Azure AD Modules über den Command:
install-module AzureAD
Installation des Skype Online Modules: Herunterladen und installieren Skype Online Powershell Modules: https://www.microsoft.com/de-de/download/details.aspx?id=39366

Das Script assign-teamspolicies.ps1 hat folgende Parameter:
-PolicyType (erzwungen): Hier kann eine oder mehrere Policy angegeben werden die auf Anwender zugeordnet werden sollen. Die verfügbaren Richtlinien sind:
AppPermissionPolicy, AppSetupPolicy, CallingPolicy, CallParkPolicy, ChannelsPolicy, ComplianceRecordingPolicy, EmergencyCallingPolicy, EmergendyCallRoutingPolicy, FeedbackPolicy, IPPhonePolicy, MeetingBroadcastPolicy, MeetingPolicy, MessagingPolicy, UpgradePolicy, VerticalPackagePolicy, VideoInteropServicePolicy
Eine Mehrfachauswahl ist durch komma-separierte Angabe der Richtlinientypen möglich
-PolicyName (erzwungen): Der Name der entsprechenden Policy. Wenn mehrere PolicyTypes auf einmal zugewiesen werden sollen, müssen die Richtlinien in den einzelnen Typen die selben Namen haben (z.B. „Lehrer“)
-Scope (erzwungen): Der Parameter entscheidet darüber über welche Methoden die Ziel-User für die Richtlinien ermittelt werden sollen. Gültige Parameter sind:
Group, Userfilter
-GroupName (optional): Der Parameter muss gefüllt werden wenn Scope auf „Group“ gesetzt wurde. Der Parameter gibt eine Azure AD Gruppe an auf die die Teams Policys zugewiesen werden sollen
-UserFilterAttribute (optional): Der Parameter muss gefüllt werden wenn Scope auf UserFilter gesetzt wurde. Das UserFilterAttribute gibt an nach welchem Azure AD Attribut Script gesucht werden soll um die betreffenden Teams User für die Zuweisung zu ermitteln
-UserFilterValue (optional): Der Parameter muss gefüllt werden wenn Scope auf UserFilter gesetzt wurde. Der UserFilterValue gibt den Wert an der In dem unter UserFilterAttribute angegebene AD Attribut gesucht werden soll.

Beispiele:
Mit dem folgenden Beispiel werden die Nachrichtenrichtlinie und Besprechungsrichtlinie mit dem Namen „Lehrer“ der Azure AD Gruppe „Alle Lehrer“ zugewiesen:
.\assign-teamspolicies.ps1 -PolicyType MeetingPolicy,MessagingPolicy -PolicyName "Lehrer" -Scope Group -GroupName "Alle Lehrer"

Mit dem folgenden Beispiel wird die die App – Berechtigungsrichtlinie, mit dem Namen „Erweiterter App Katalog“ allen Benutzern zugeordnet die im Azure AD Attribut „Job Title“ den Wert „Teams Pro“ zugewiesen haben:
.\assign-teamspolicies.ps1 -PolicyType AppPermissionPolicy -PolicyName "Erweiterter App Katalog" -Scope UserFilter -UserFilterAttribute "jobtitle" -UserFilterValue "Teams Pro"

Das Script assign-teamspolicies.ps1 kann hier abgerufen werden:
https://gist.github.com/J-a-k-o-b/cb659c744abbc72b8d45f71fdf4e5b7f

Teams Deployment

Schulen stehen wie andere Unternehmen vor administrativen Herausforderungen bei der Verwaltung von Teams. Eine davon ist das Anlagen von Teams nach Richtlinien um die Umgebung übersichtlich und einheitlich zu halten. Weiterhin werden gerade derzeit die IT Verantwortlichen der Schulen mit Anfragen überhäuft. Um das schnelle und standardisierte Anlegen von Teams zu erreichen und Wildwuchs zu vermeiden hilft außer der Einschränkung der Teams Erstellung eine standardisierte Anlage technisch zu unterstützen.
Die Möglichkeiten sind vielfältig. Eine pragmatische Methode per Powershell möchte ich hier beschreiben.

Anlegen von massenhaft Teams via Powershell:

Das Script deploy-classteams.ps1 wurde erstellt um massenhaft Teams auf Grundlage einer CSV zu erstellen. Die CSV beinhaltet dabei die Klassenbezeichnung, die jeweiligen Lehrer und die darin benötigten Fächer.

Beispiel einer entprechenden CSV

Das Script legt dabei nach Best Practice pro Fach ein Teams an. Die Team-Bezeichnung wird aus dem Klassennamen und dem jeweiligen Fach zusammengesetzt.
Alle für die Klasse benannten Lehrer werden als Lehrer (Owner) in den Teams der Klassen hinterlegt.
Schüler, deren AD Objekt das Feld „Department“ mit dem Klassennamen gefüllt haben, werden als Schüler (Member) aufgenommen.

Das Script lässt sich einfach anpassen um z.B. andere Namenskonventionen aufzunehmen, eine andere Art der Schülerzuweisung zu wählen, oder weitere Einstellungen in den Teams vorzunehmen.

Voraussetzungen für das Script sind die Installation von den Modulen AzureAD und MicrosoftTeams
Installation des AzureAD Modules:
1. Powershell als Admin öffnen
2. Installation des Azure AD Modules über den Command:
install-module AzureAD
3. Registrieren der POSHTestGallery als Repository für die Powershell (um z.B. auf Beta Module zugreifen zu können.)
3. Installation des Microsoft Teams Beta Modules (v1.0.21) über den Command:
install-module MicrosoftTeams -MinimumVersion 1.0.21

Bei dem starten des Scripts:
deploy-classteams.ps1 -CSV example.csv
wird zunächst nach einer Authentifizierung beim Azure AD und danach nach einer Authentifizierung bei Microsoft Teams. In den meisten Fällen wird hier der gleiche administrative Account genutzt.
Danach geht es los und die einzelnen Teams werden angelegt

Beispielhafter Ablauf des Scripts

Das Script deploy-classteams.ps1 kann hier abgerufen werden:
https://gist.github.com/J-a-k-o-b/a072cdd5b5a441422510784e7012a206

Weitere Ausbaustufen wären z.B:
Clonen von Teams: Das Script kann auf Graph Requests umgebaut werden um z.B. Templates für das Anlegen von Teams zu nutzen. Dies ist sinnvoll wenn z.B. vordefinierte Apps, Kanäle oder Registerrten in neue Teams mit aufgenommen werden sollen.
Nutzen von Enterprise Applications: Das Script könnte auf App basierte Anmeldung umgestellt werden um z.B. eine einfachere Anmeldung zu gestalten.
Integration in Flow/AzureAutomation:


Azure AD Grundeinstellungen

Anpassung des Branding

Die Anpassung des Branding ist wichtig um die Anwender zu trainieren ihre Anmeldeseiten zu erkennen. Das macht es Angreifern mit gefälschten Anmeldeseiten deutlich schwieriger. Zusätzlich versteckt sich hier die Einstellung zu Stay Signed In die dringend abgeschaltet werden sollte, da wir hier von unmanaged devices ausgehen.

  • Stay Signed In abschalten
  • Hintergrundbild, Bannerlogo einfügen

User Settings

Die Defaultkonfiguration der Rechte in den User Settings für einen normalen Member ist an dieser Stelle sehr weit vom Use Case einer Schule entfernt. Es ist weder erwünscht, dass Lehrer oder Schüler Apps im Tenant registrieren können noch, dass sie Zugriff auf das AAD Admin Portal haben.

  • App-Registrierungen disablen
  • Zugriff auf Azure AD-Verwaltungsportal einschränken

Preview Features

Sowohl das MyApps Portal (bisher eher unwichtig für meine Schulen) als auch die MFA/SSPR Registration (siehe unten) sind in der Preview deutlich Anwenderfreundlich und tragen nebenbei auch zur Erhöhung der Sicherheit bei.

  • MyApps alle
  • Converged Registration alle

Grundeigenschaften

Wird gerne vergessen – ist aber sehr wichtig! Die notwendigen Daten können oft von der Homepage der Schule übernommen werden.

  • Sprache
  • Globaler Datenschutzkontakt
  • URL zur Datenschutzerklärung

Gastzugriff

Hier besteht dringender Handlungsbedarf, da die Defaultkonfiguration sehr weit vom Use Case einer Schule entfernt ist. Die Möglichkeit zur Einladung von Gästen sollte auf einen Personenkreis beschränkt werden der die Konsquenzen absehen kann.

  • Mitglieder können einladen disablen
  • Gäste können einladen disablen
  • Einmalkennung per E-Mail für Gastbenutzer aktivieren

Group Settings

Auch für Gruppen ist die Defaultkonfiguration weit vom Use Case einer Schule entfernt. Es werden in der Regel keine Self-Service Funktionen benötigt – besonders nicht für Sicherheitsgruppen.

  • Zugriff auf Gruppen im Zugriffspanel beschränken
  • Benutzer können Sicherheitsgruppen in Azure-Portalen erstellen – NEIN
  • Benutzer können Office 365-Gruppen in Azure-Portalen erstellen. – NEIN

Devices

Da davon auszugehen ist, dass der Zugriff von Privatgeräten erfolgt ist es sehr sinnvoll zu unterbinden, dass die Benutzer Geräte registrieren.

  • Benutzer dürfen Geräte in Azure AD einbinden – KEIN

Unternehmensanwendungen

Das Verfahren zur Integration weiterer Apps im Tenant sollte komplett aus der IT gesteuert werden, d.h. neben der Deaktivierung der selbständigen Registrierung durch die Anwender sollte auch die Möglichkeit deaktiviert werden Consent zu erteilen.

  • Benutzer können Apps den Zugriff auf Unternehmensdaten in ihrem Namen gestatten – NEIN

Azure MFA und Self Service Passwort Reset (SSPR)

Leider sind in der A1 Lizenz keine AAD Premium Funktionen enthalten, d.h. für die Durchsetzung von MFA kann nur manuell oder durch die Security Defaults (welche nicht weiter konfiguriert werden können) erfolgen.

Die Nutzung von MFA und SSPR stellt eine Schule aber ziemlich sicher vor deutlich größere Hürden als Unternehmen. Die Schüler besitzen oft keine Handys oder dürfen diese nicht in der Schule verwenden. Auch bei den Lehrern ist nicht unbedingt die Verfügbarkeit von Smartphones vorauszusetzen.

Ein praxistauglicher Ansatz ist für die Administration zusätzliche Konten anzulegen und „per-User-MFA“ zu erzwingen. Auch für die Lehrer kann die Option „per-User-MFA“ sinnvoll sein – wenn die technischen Möglichkeiten gegeben sind und die Akzeptanz bei den Lehrern vorhanden ist.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.