Automatisiertes Provisioning für Microsoft Teams und SharePoint

Automated-Teams-Provisioning-Intro

In der SharePoint-Welt ist die automatisierte Provisionierung von Intranet- und Team-Sites seit mehr als einem Jahrzehnt ein Thema. Grundsätzlich geht es dabei um die automatische Erstellung und Konfiguration von SharePoint Sites mit Hilfe von Vorlagen und Programmcode. Der Vorteil: Es lassen sich sehr schnell standardisierte Arbeitsbereiche ausrollen, ohne dass ein IT-Administrator diese einzeln manuell aufschalten und konfigurieren muss.

Microsoft Teams boomt

Das Bedürfnis nach automatisierter Provisionierung beschränkt sich mittlerweile aber nicht mehr nur auf SharePoint, sondern vor allem auch auf Microsoft Teams. Nicht zuletzt wegen den eingebauten Video-Conferencing-Funktionen und den flexiblen Integrationsmöglichkeiten von externen Werkzeugen hat Microsofts Kollaborationstool enorm an Popularität gewonnen. Ein Trend, der sich mit der Corona-Krise nochmals stark beschleunigt hat. Um Mitarbeitern die Teamarbeit in Remote-Umgebungen zu ermöglichen, ist der Bedarf nach Microsoft-Teams-Arbeitsbereichen stark gewachsen.

Das Problem dabei: Ohne eine griffige Governance-Strategie mit formalisierten Prozessen und einheitlichen Standards entsteht schnell einmal unkontrollierter Wildwuchs (auch Sprawl genannt). Um die Problematik des Site oder Teams Sprawl als Ganzes besser verstehen zu können, zunächst einen kurzen Exkurs in die Welt der Microsoft 365 Groups (bislang als Office 365 Groups bekannt) und wie die verschiedenen Kollaborationswerkzeuge in Microsoft 365 (respektive Office 365) aufgeschaltet und miteinander verknüpft werden.

Die Self-Service-Philosophie in Microsoft 365

Das Einrichten von Werkzeugen und Diensten erfolgt in Microsoft 365 standardmässig nach dem Self-Service-Prinzip. Benutzer sollen Teams-Arbeitsbereiche, SharePoint Sites, Planner-Boards, Stream-Channels, Yammer-Gruppen und vieles andere mehr nach Bedarf selbständig erstellen können. Im Zentrum dieser Self-Service-Philosophie stehen die Microsoft 365 Groups. Diese fungieren als Membership-Service, über den der Zugriff der Benutzer auf verschiedene Microsoft-365-Dienste geregelt werden kann.

Immer wenn eine Microsoft 365 Gruppe erstellt wird, werden im Hintergrund verschiedene Dienste wie beispielsweise eine SharePoint Team Site, eine Dokumentenbibliothek, ein Gruppenkalender, ein Planner-Plan oder ein OneNote-Notebook eingerichtet und an die Gruppe geknüpft. Die Erstellungen einer Microsoft 365 Gruppe lässt sich dabei von zahlreichen unterschiedlichen Stellen auslösen: Erstellt jemand beispielsweise einen Planner-Plan, eine Gruppe in Microsoft Stream oder einen Arbeitsbereich in Microsoft Teams, wird parallel dazu im Hintergrund eine Microsoft 365 Gruppe eingerichtet.

Microsoft Teams Planner Plan

Wird ein neuer Arbeitsbereich in Microsoft Teams erstellt, wird im Hintergrund automatisch eine SharePoint Site, eine Dokumentenbibliothek, ein Wiki, ein OneNote-Notizbuch, ein Gruppenkalender und ein Planner-Board eingerichtet.

Welche verknüpften Dienste dabei genau eingerichtet werden, unterscheidet sich je nachdem, von welchem Service die Erstellung der Microsoft 365 Gruppe ausgelöst wurde. Im Falle eines Microsoft-Teams-Arbeitsbereiches wird automatisch eine damit verbundene SharePoint Team Site inklusive Dokumentenbibliothek, ein OneNote Notebook, eine Wiki-Page und ein Gruppenkalender provisioniert. Mehr dazu, wann welche Dienste zusammen mit einer Microsoft 365 Gruppe aufgeschaltet werden, liefert dieser Blogpost oder die sehr übersichtliche Infografik von Matt Wade.

Ohne entsprechende Leitplanken wird der Microsoft-365-Tenant sehr schnell mit einer Vielzahl von Gruppen, Teams-Arbeitsbereichen, SharePoint Sites, Planner Boards und OneNote-Notizbüchern überschwemmt, über die kaum mehr jemand einen Überblick hat. Das Verwalten und Entrümpeln von Gruppen und deren angeschlossenen Diensten führt schnell zu einem hohem Verwaltungsaufwand. Ein weiteres Problem ist, dass Teams und Sites von Benutzern oft unzutreffend benannt oder falsch konfiguriert werden. Häufig ist es auch der Fall, dass Arbeitsbereiche für denselben Zweck doppelt und mehrfach erstellt werden.

Einschränkungen führen zu Schatten-IT

Als Alternative zum Self-Service-Konzept lässt sich das Einrichten von Microsoft 365 Gruppen für alle Benutzer unterbinden oder auf einen bestimmten Kreis an IT-Verantwortlichen einschränken (für letzteres ist eine Premium-1-Lizenz für Azure-Active Directory erforderlich).

Diese Variante führt bei den zuständigen Administratoren zu einem Mehraufwand, die das Aufschalten und Konfigurieren von Arbeitsbereichen manuell durchführen müssen.
Ein weiterer Nachteil: Sind die Benutzer nicht in der Lage, die Kollaborationswerkzeuge, welche sie für ihre tägliche Arbeit benötigen, zeitnah und unkompliziert einzurichten, fördert dies die Entstehung der sogenannten Schatten-IT. Die Gefahr ist gross, dass Benutzer auf Werkzeuge ausserhalb des Microsoft-365-Universums (z.B. Whats-up- oder Facebook-Gruppen, Trello, Slack oder Zoom) ausweichen. Diese liegen dann meist nicht mehr im Kontrollbereich der IT-Abteilung und die Daten werden in vielen Fällen nicht mehr Datenschutz-konform aufbewahrt.

Standardisierte Teams und SharePoint Sites

In vielen Unternehmen besteht ausserdem die Notwendigkeit, viele Teams-Arbeitsbereiche und/oder SharePoint Sites mit derselben Konfiguration und identischem Funktionsumfang zu erzeugen. Ein typisches Beispiel dafür sind etwa Projekt-Arbeitsbereiche, die jeweils mit einem Planner-Board, bestimmten Chat-Kanälen und einer spezifischen Ordner-Struktur für die Ablage von Projekt-Dokumenten ausgestattet sein müssen. Weitere Beispiele wären etwa kundenspezifische Arbeitsbereiche zur Unterstützung von CRM-Aufgaben, virtuelle Klassenräume für Ausbildungszwecke oder Teams-Workspaces, welche für die Zusammenarbeit mit externen Partnern optimiert sind.

Das Einrichten solcher standardisierten Arbeitsbereiche bedeutet für den IT-Verantwortlichen eine Menge Arbeit, die er mühsam von Hand erledigen muss. Nicht selten wird vergessen, das eine oder andere Feature einzurichten oder eine bestimmte Konfigurationseinstellung vorzunehmen. Das alles ist nicht nur zeitraubend und fehleranfällig, sondern kann auch dazu führen, dass Benutzer Tage auf ihre Kollaborationsumgebung warten müssen.

Automatische Provisionierung schafft Abhilfe

Die genannten Probleme lassen sich mit einer massgeschneiderten Lösung für die automatische Provisionierung elegant in den Griff kriegen. Arbeitsbereiche lassen sich damit mit Hilfe von Vorlagen und Vorgaben selbsttätig einrichten und konfigurieren. Dabei können die Benutzer den Bestellprozess selber auslösen, womit das Prinzip des Self-Service gewahrt bleibt. Gleichzeitig wird dem IT-Verantwortlichen die Bürde abgenommen, immer und immer wieder dieselben Teams-Arbeitsbereiche und SharePoint Sites einrichten zu müssen.

Typischerweise wird zwischen dem Einreichen der Bestellung und dem Auslösen der Provisionierung ein Genehmigungsprozess eingeschoben, über den sichergestellt werden kann, dass die eingereichte Bestellung auch tatsächlich den Firmenanforderungen entspricht. Vorgesetzte oder IT-Verantwortliche können die eingegangene Bestellung gutheissen oder ablehnen.

Neben der Zeitersparnis und dem kontrollierten Self-Service bietet die automatische Provisionierung eine Reihe an weiteren Vorteilen:

  • Mehr Sicherheit durch korrekte Konfiguration
  • Konsistenter Funktionsumfang
  • Geringere Wartezeit für Benutzer
  • Reduktion von Wildwuchs
  • Durchsetzung von Namenskonventionen

Die Komponenten einer Provisionierungslösung

Die Microsoft Cloud (Microsoft 365, Power Platfom und Azure) bietet eine ganze Palette an Diensten und Werkzeugen, mit der sich eine eigene, massgeschneiderte Provisionierungslösung – vom Bestellformular bis zur Programmlogik – umsetzen lässt. Je nach Anforderungen des Kunden können unterschiedliche Dienste in unterschiedlicher Kombination zum Einsatz kommen.

Teams and SharePoint Provisioning via Power Automate and Azure Automation

Beispiel einer Provisionierungslösung mit einer SharePoint-Liste, einem Power-Automate-Genehmigungsflow und Azure Automation. Letzteres erzeugt via PowerShell Scripts die benötigten Teams Workspaces und SharePoint Sites.

 

Nachfolgend ein Überblick über die wichtigsten Services und Werkzeuge, welche bei einer individuellen Provisionierungslösung typischerweise zur Anwendung kommen können:

  • Formulare: Den Benutzern wird meist ein Bestellformular zur Verfügung gestellt, über welches sie die benötigten Arbeitsbereiche inklusive den gewünschten Konfigurationsoptionen (Sichtbarkeit, Art des Arbeitsbereichs) erfassen können. Für die Umsetzung des Formulars kann je nach Komplexitätsgrad Microsoft Forms, Power Apps oder das Standardformular einer SharePoint Liste zum Einsatz kommen. Das Formular lässt sich direkt in Microsoft Teams (als Registrierkarte oder Personal App) oder im Intranet über eine SharePoint Site zur Verfügung stellen.
Microsoft Teams and Power Apps Form

Mit Hilfe von Power Apps lassen sich ansprechende Bestellformulare umsetzen, welche direkt in Microsoft Teams oder über eine SharePoint-Site zur Verfügung gestellt werden können.

 

  • Bots: Als Alternative zu einem Formular kann der Bestellprozess auch mit Hilfe eines Bots abgewickelt werden. Die Bestellung wird dann direkt in Microsoft Teams interaktiv via Chatfenster vom Benutzer abgefragt. Bots können mit Hilfe des Microsoft Bot Framework entwickelt und via Azure Bot Service gehostet werden.
  • Datenbank: Für die Speicherung der Bestellung und die Verwaltung des Provisionierungsprozesses wird eine Datenbank benötigt. Als sehr einfache und kostengünstige Lösung bietet sich hierzu eine SharePoint-Liste an. Diese bietet neben anderem den Vorteil, dass keine eigene Web-UI erstellt werden muss. Ausserdem kann sie sehr einfach mit eigenen Ansichten, Spaltenformatierung und Power Automate Flows erweitert werden. Alternativ zu einer SharePoint Liste kann auch auf kostenpflichtige Datenbanken wie den Common Data Service (CDS) der Power Platform oder Azure SQL Database zurückgegriffen werden.
Teams Provisioning Requests

Eine SharePoint-Liste eignet sich hervorragend für die Erfassung und Verwaltung von Bestellungen für Teams-Arbeitsbereiche und SharePoint Sites.

 

  • Genehmigungsprozess: Power Automate (ehemals Microsoft Flow) bietet alle notwendigen Funktionen, um einen robusten Genehmigungsworkflow umzusetzen.
  • Templates: Vorlagen helfen dabei, standardisierte Arbeitsbereiche mit immer denselben Objekten (Chatkanäle, Dokumentbibliotheken, Menüeinträgen etc.) und Konfigurationseinstellungen einzurichten. Für die Konfiguration von SharePoint-Sites können SharePoint Site Designs, PNP Provisioning Templates oder eine Kombination von beidem zum Einsatz kommen (siehe dazu auch diesen separaten Blog-Post). PNP Provisioning bietet mittlerweile auch die Möglichkeit, Teams-Arbeitsbereiche zu konfigurieren. Für das 3. Quartal hat Microsoft zudem für Teams eine neuen Template-Funktion angekündigt. Mit grosser Wahrscheinlichkeit wird man auch diese in absehbarer Zeit in einen Provisionierungsprozess einbinden können.
  • Programmlogik für die Provisionierung: Die eigentliche Durchführung der Provisionierung kann einerseits durch Ausführung von Programmcode (z.B. PowerShell, C# ) oder Abspielen eines Workflows erfolgen. Für das Hosting und die Ausführung von Programmcode bietet sich Serverless-Technologien wie Azure Functions oder Azure Automation an. Soll statt Code ein Workflow abgearbeitet werden, kann auf Azure Logic Apps zurückgegriffen werden. Für einfachere Provisionierungslösungen lässt sich auch Power Automate einsetzen. Mit dieser Variante spart man sich zwar die Kosten für die Azure-Dienste, muss dann aber auf ein kostenpflichtiges Premium-Abo von Power Automate (wird für den Zugriff auf das MS Graph API benötigt) zurückgreifen.
  • Storage: Damit während des Provisionierungsprozesses auf die Vorlagen und andere benötigte Objekte (z.B. Standard-Dokumente, Icons) zugegriffen werden kann, wird ein Cloud-Storage benötigt. Hierfür können beispielsweise Azure Blob Storage oder Azure Files verwendet werden.
Team Provisioing via Azure Automation Runbooks

Via Azure Automation Runbooks lassen sich PowerShell Scripts ausführen, welche die Teams Arbeitsbereiche und SharePoint Sites einrichtet und konfiguriert.

Fazit

Wie die oben aufgezeigte Auflistung zeigt, kann eine Provisionierungslösung auf viele verschiedene Arten implementiert werden.

Die Wahl der richtigen Methode hängt dabei von der Unternehmenskultur, der Firmengrösse und den Governance-Anforderungen ab. Für einige reicht eine sehr leichtgewichtige Lösung mit einfachen Anpassungen aus, während andere stark formalisierte und vollständig automatisierte Prozesse benötigen. Die Lösung muss so aufgebaut sein, dass sie die Anforderungen erfüllt, möglichst angenehm zu bedienen ist und zuverlässig funktioniert.

Wichtig ist es zudem, bei der Konzeption der Lösung immer auch die Kosten im Auge zu behalten. Während einige der oben genannten Werkzeuge bereits in einem Microsoft-365-Abonnement enthalten sind, fallen bei den Azure-Diensten, die meist nach dem Pay-Per-User-Modell abgerechnet werden, Nutzungskosten kann. Und je nach Architektur der Lösung reicht die in Microsoft 365 enthaltene Seeded-License für Power Automate und Power Apps nicht aus, so dass man zumindest für einen Teil der Benutzer eine Premium-Lizenz benötigt.

Haben Sie Fragen rund um das Thema Teams und SharePoint Provisioning? Benötigen Sie eine Governance-Strategie oder individuelle Provisionierungslösung? Dann nehmen Sie bitte Kontakt mit mir auf?

Tags: , , , , , ,

Ähnliche Blogbeiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Bitte füllen Sie dieses Feld aus
Bitte füllen Sie dieses Feld aus
Bitte gib eine gültige E-Mail-Adresse ein.
Sie müssen den Bedingungen zustimmen, um fortzufahren

Neueste Beiträge

Soziale Netzwerke

LinkedIn
Xing
RSS
Skype
Menü