PnP Provisioning mit ProvisionPoint

Seit der Einführung der PnP Provisioning-Engine im Jahre 2015 hat sich vieles getan. Viele Hersteller haben Ihre Lösungen angepasst oder erweitert und setzen nun ebenfalls auf das PnP Framework. Dieser Beitrag verschafft einen Überblick über die Thematik und zeigt, wie aus bestehenden SharePoint Seiten Templates erstellt werden können und wie diese im Zusammenspiel mit ProvisionPoint funktionieren.

Was versteht man unter Provisionierung?

Im Allgemeinen versteht man unter Provisionierung/Provisioning, etwas bereitzustellen oder eben verfügbar zu machen. Die Bereitstellung, also das Provisionieren, ist ein wichtiger Bestandteil eines IT-Betriebsmanagements und befasst sich mit einer Vielzahl von Aspekten wie beispielsweise der Verwaltung von Benutzern, deren Rechten und Ressourcen, der Bereitstellung von Verbindungen für Hard- und Software, aber auch Diensten und Anwendungen.

Screenshot des Microsoft 365 SharePoint Admin Centers: Neue Seiter erstellen
Microsoft 365 SharePoint Admin Center

Klicke ich etwa wie im oberen Bild ersichtlich auf den Button «Create» und wähle eine bestimmte Seite (Vorlage oder eben Template) aus und konfiguriere die nötigen Parameter, so erstellt Microsoft im Hintergrund die gewünschte Seite. Dieser Vorgang nennt sich Provisionierung.

Erstellen der SharePoint Site als Vorlage

Das Erstellen der Vorlage erfolgt normal über das GUI. Die gewünschten Apps wie Listen- und Bilbiotheken inkl. Inhaltstypen können wie gewohnt erstellt und konfiguriert werden. Natürlich können auch Pages erstellt und mit Webparts bestückt und konfiguriert werden. Sämtliche Informationen lassen sich mit PnP exportieren und als Template verwenden.

Screenshot: SharePoint Site, welche als Vorlage dient
SharePoint site, welche als Vorlage dient.

„Save site as a template“ war einmal

Um heutzutage aus einer SharePoint Site eine Vorlage zu kreieren, verwendet man PowerShell, respektive das PnP PowerShell Modul. Die Installation erfolgt je nach Modul durch die Eingabe eines der folgenden Befehle.

Screenshot: Installation des PnP Moduls
Installation PnP Modul Quelle: Microsoft

Um das Template nun exportieren zu können, muss man sich zuerst mittels PowerShell auf der entsprechenden Site Collection verbinden. Das geht wie folgt:

Connect-PnPOnline -Url "SharePoint Site Collection URL"

Um sich zu versichern das man auf der gewünschten Seite ist kann mittels Get-PnPConnection die Verbindung überprüft werden.

Screenshot: Resulatat von Get-PnP-Connection
Resultat von Get-PnPConnection

Um das Template nun exportieren zu können, kann folgender Befehl verwendet werden:

Get-PnPProvisioningTemplate -Out "C:TempDemo.xml"

Der Paramter -Out kann selbstständig definiert werden. In diesem Fall wird die XML Datei mit dem Namen Demo.xml im Temp Laufwerk auf der Systemplatte abgelegt.

Validierung der Vorlage

Die soeben erstellte XML Datei kann mit einem beliebigen Texteditor geöffnet, angeschaut und bei Bedarf auch angepasst oder erweitert werden.

Ausschnitt aus der soeben erstellten XML-Datei
Ausschnitt aus der soeben erstellten XML-Datei

Tokens
Bei genauerem Hinschauen erkennt man einig Einträge, wie beispielsweise {site}, welche sich in geschweiften Klammern befinden. Dabei handelt es sich um sogenannte Tokens, welche beim Verwenden des Templates dynamisch gesetzt werden. Weitere Infos dazu können der Dokumentation entnommen werden.

Was ist mit Content (Inhalt)? Was sind Handler?

Grundsätzlich wird der Inhalt wie Dokumente, Listenelemente, usw. nicht exportiert. Was jedoch exportiert werden kann, sind sogenannte Client-Side Pages, also SharePoint Pages wie beispielsweise die Homepage.aspx oder auch weitere Seiten.

Mit sogenannten Handlern kann definiert werden, welche Teile einer Site Collection exportiert werden sollen und welche nicht.

Get-PnPProvisioningTemplate -Out template.xml -Handlers Lists, SiteSecurity

In diesem Fall werden nur Listen und die SiteSecurity, jedoch keine Client-Side Page oder sonstiges exportiert.

Anwenden der Vorlage

Um die Vorlage nun anwenden zu können muss zuerst eine neue Site Collection erstellt oder eine bestehende verwendet werden. Das Erstellen der Seite kann mittels PowerShell oder direkt über das GUI gemacht werden. In unserem Fall haben wir eine blanke Team Site (non group connected) direkt via SharePoint Administration erstellt.

Neu erstellte SharePoint out-of-the-box Site Collection
Neu erstellte SharePoint out-of-the-box Site Collection
Connect-PnPOnline -Url "Neue SharePoint Site Collection URL"

Mit dem oben stehenden Befehl verbinden wir uns auf die neu erstellte Site Collection. Nun kann die Vorlage (Template) mittels nachfolgendem Befehl appliziert werden:

Apply-PnPProvisioningTemplate -Path "C:TempDemo.xml"
Vorlage wird angewendet
Vorlage wird angewendet

Nach einer kurzen Zeit ist die Vorlage appliziert und die Seite kann via Browser aufgerufen werden. Sämtliche gewählten Einstellungen aus dem Template wurden übernommen.

Neu erstellte SharePoint Site mit PnP Provisioning
Neu erstellte SharePoint Site mit PnP Provisioning

Governance, Self Service und vieles mehr mit ProvisionPoint realisieren

Die oben gezeigte Lösung mittels PowerShell funktioniert bestens und basiert auf dem Standard PnP Framework. Für eine Handvoll Sites pro Jahr in einem sehr kleinen Unternehmen mag das ausreichen und sämtliche Anforderungen des Business erfüllen. Was aber, wenn nebst dem Anwenden einer Vorlage noch weitere Möglichkeiten wie beispielsweise das dynamische Setzen von Parametern, Anpassen von Gastzugriffsrichtlinien gemäss Vorgaben oder auch das Überprüfen einer zu erstellenden Seite mittels Approval Process eingehalten werden soll? Selbstverständlich gibt es auch dafür Möglichkeiten dies mittels Power Automate, Forms oder anderen Werkzeugen aus der Microsoft 365 Palette zu realisieren. All das benötigt aber entsprechende Kenntnisse und erfordert eine stetige Weiterentwicklung der Lösung.

Wer das nicht will oder kann, der sucht nach einer Lösung wie ProvisionPoint, welche all das mit sich bringt und dazu noch individualisierbar ist.

Von classic sites über Group connected team sites bis hin zu Teams

Egal welche Art von Services sie bereitstellen möchten, ProvisionPoint unterstützt nahezu alles. Dabei können sie zwischen vordefinierten Standardtemplates oder selbst erstellten PnP Provisioning Templates – wie dem zuvor erstellten – auswählen.

Erstellen einer Service Definition

Bevor den Nutzern eine Vorlage zur Verfügung gestellt wird, muss zuerst eine sogenannte Service Definition erstellt werden. Hier kann nun die Art (Service Type) ausgewählt werden.

Konfiguration Service Definition in ProvisionPoint
Konfiguration Service Definition in ProvisionPoint

Um beim Erstellen oder auch verwalten der Site Collection weitere Informationen wie beispielsweise Projektleitung, Start- und Enddatum oder Informationen zu Kosten, Qualität und Termine mitgeben zu können, muss ein entsprechendes Formular direkt in ProvisionPoint erstellt werden.

ProvisionPoint Antragsformular
ProvisionPoint Antragsformular

Microsoft 365 Integration

Da ProvisionPoint eine eigenständige App und somit losgelöst von SharePoint und anderen Microsoft 365 Services wie Teams & Co. ist, stellt sich natürlich die Frage nach der Integration. Für Microsoft Teams hat ProvisionPoint anfangs dieses Jahres eine App veröffentlicht, welche eine nahtlose Integration in Teams ermöglicht.

ProvisionPoint App für Microsoft Teams
ProvisionPoint App für Microsoft Teams

Um in SharePoint beispielsweise eine Liste über sämtliche Projekte führen zu können, gibt es die Möglichkeit, sämtliche erstellten Sites inkl. Informationen in eine SharePoint Liste zu schreiben. Dort können diese Einträge entweder mit dem ebenfalls zur Verfügung gestellten Directory Webpart oder einfach über das Standard List Webpart dargestellt werden.

ProvisionPoint Directory Web Part
ProvisionPoint Directory Web Part

Einer der Vorteile des Directory Webparts ist die Möglichkeit, einzelne Elemente anzuwählen und diese dann mit dem Info Button direkt im eingeframten ProvisionPoint Fenster bearbeiten und anpassen zu können.

ProvisionPoint Directory Webpart Informationen
ProvisionPoint Directory Webpart Informationen

Fazit IOZ

Die stetige Weiterentwicklung des PnP Frameworks zeigt, dass sich die Technologie durchgesetzt hat und einer wachsenden Beliebtheit erfreut. Die Tatsache, dass auch andere Hersteller bei der Provisionierung konsequent auf PnP setzen, untermauert dieses Einschätzung.

Der Einsatz von ProvisionPoint kann sich in vielerlei Hinsicht lohnen. Im Gegensatz zu anderen Provisionierungslösungen schränkt ProvisionPoint den Nutzer nicht ein, sondern erweitert die Möglichkeiten des PnP Frameworks mit einer nahtlosen Integration in das Microsoft 365-Ökosystem. Die Möglichkeit, Benutzern verschiedenste Vorlagen einfach und selbsterklärend bereitzustellen, sich dabei an interne Vorgaben zu halten und bei Bedarf Änderungen vorzunehmen, erachte ich als grosses Plus beim Einsatz von ProvisionPoint.

Falls Sie mehr über ProvisionPoint wissen möchten, zögern Sie nicht, uns zu kontaktieren.

Beitrag teilen
Geschrieben von

Sandro Ineichen

Projektleiter

Profil anzeigen

1 Kommentar zu „PnP Provisioning mit ProvisionPoint“

  1. Pingback: Productivity News vom 1. Dezember 2021: 8 Effizienz-Tipps für SharePoint Intranets und Microsoft Teams - MEHR365

Kommentar verfassen

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

IOZ_LOGO_weiss

Profis für M365-Intranets & digitale Arbeitsplätze, Power Apps, Power Automate Workflows, sowie Managementsysteme.

Angebote

Angebotsübersicht

Nach oben scrollen