1. Zusammenfassung
Die Verwaltung von Microsoft SharePoint Server mittels PowerShell hat sich zwischen SharePoint Server 2019 und SharePoint Server Subscription Edition grundlegend gewandelt. Der Kern dieser Veränderung liegt im Übergang von einem PSSnap-In-basierten Modell, zentriert um das Snap-In Microsoft.SharePoint.PowerShell in SharePoint Server 2019, hin zu einem PowerShell-Modul-basierten Ansatz in SharePoint Server Subscription Edition. Dieses neue Modul wird in der Dokumentation oft als sharepoint-server-Modul referenziert, wobei der in PowerShell-Befehlen verwendete Name weiterhin Microsoft.SharePoint.PowerShell sein kann, sich jedoch wie ein Modul verhält.1
Diese Umstellung vereinfacht den Zugriff auf Cmdlets erheblich und verbessert die Erfahrung für Administratoren, da die SharePoint Server-Cmdlets nun automatisch in Standard-PowerShell-Konsolen verfügbar sind, ohne dass explizite Ladebefehle erforderlich sind.1 Diese Entwicklung spiegelt eine breitere Strategie von Microsoft wider, die Verwaltung von Serverprodukten durch die Übernahme robusterer und flexiblerer PowerShell-Funktionen zu modernisieren und SharePoint Server an moderne PowerShell-Praktiken anzupassen.2 Es gab in der Community bereits seit Längerem den Wunsch nach einer Modulversion der SharePoint-Cmdlets, um die Auto-Ladefähigkeiten von PowerShell nutzen zu können.5
Die Implikationen dieses Wechsels sind weitreichend und betreffen die Entwicklung von Skripten, die Methoden zur Überprüfung der Verfügbarkeit von Cmdlets und die Fehlerbehandlung. Administratoren und Entwickler müssen ihre Ansätze anpassen, um die Vorteile der neuen Architektur in SharePoint Server Subscription Edition voll auszuschöpfen.
2. PowerShell-Cmdlet-Verwaltung in SharePoint Server 2019: Der Snap-In-zentrierte Ansatz
In SharePoint Server 2019 basiert die PowerShell-Verwaltung maßgeblich auf der Verwendung eines PSSnap-Ins. Dieses ältere Konzept zur Erweiterung von PowerShell 2 bildet die Grundlage für den Zugriff auf SharePoint-spezifische Befehle.
2.1. Das Microsoft.SharePoint.PowerShell Snap-In: Die Kernkomponente
Alle für SharePoint Server 2019 spezifischen Cmdlets sind im PSSnap-In Microsoft.SharePoint.PowerShell gebündelt. Dieses Snap-In muss explizit in eine PowerShell-Sitzung geladen werden, damit die darin enthaltenen Cmdlets verwendet werden können.6 Ohne das Laden dieses Snap-Ins erkennt die PowerShell-Umgebung die SharePoint-Befehle nicht. Die Registrierung der zugrundeliegenden DLL-Datei, Microsoft.SharePoint.PowerShell.dll, erfolgt während der Installation von SharePoint Server und ermöglicht das anschließende Laden des Snap-Ins.7
2.2. Laden des Snap-Ins: Mechanismen und Kontexte
Das Laden des Microsoft.SharePoint.PowerShell-Snap-Ins kann auf zwei Wegen erfolgen, abhängig von der verwendeten PowerShell-Umgebung.
2.2.1. Automatisches Laden: Die SharePoint Management Shell und SharePoint.ps1
Die SharePoint Management Shell, eine spezielle PowerShell-Konsole, die mit SharePoint Server installiert wird, lädt das Microsoft.SharePoint.PowerShell-Snap-In beim Start automatisch. Dies wird durch das Skript SharePoint.ps1 realisiert, das sich im Verzeichnis %CommonProgramFiles%\Microsoft Shared\Web Server Extensions\16\Config\PowerShell\Registration befindet (der Pfad \16\ bezieht sich auf die SharePoint-Version, die mit SharePoint 2016 begann und für 2019 beibehalten wurde). Dieses Skript enthält den Befehl Add-PSSnapin Microsoft.SharePoint.PowerShell, der sicherstellt, dass die Cmdlets in dieser dedizierten Shell sofort verfügbar sind.7 Die Datei SharePoint.ps1 fungiert somit als ein wichtiger Bootstrapper, der eine vorkonfigurierte Umgebung speziell für die SharePoint-Administration bereitstellt. Diese Bequemlichkeit ist jedoch auf die SharePoint Management Shell beschränkt.9
2.2.2. Manuelles Laden: Add-PSSnapin in Standard-PowerShell-Konsolen (ISE, powershell.exe)
Bei Verwendung von Standard-PowerShell-Konsolen wie der Windows PowerShell ISE oder der regulären powershell.exe, die standardmäßig keine Kenntnis von SharePoint haben, muss der Administrator das Snap-In manuell laden. Dies geschieht mit dem Befehl Add-PSSnapin -Name Microsoft.SharePoint.PowerShell.2 Ohne diesen expliziten Ladeschritt werden SharePoint-Cmdlets nicht erkannt und führen zu Fehlermeldungen.10
2.3. Überprüfen der Snap-In-Verfügbarkeit
Um zu überprüfen, ob das Microsoft.SharePoint.PowerShell-Snap-In in der aktuellen Sitzung geladen ist, wird das Cmdlet Get-PSSnapin verwendet. Beispielsweise gibt Get-PSSnapin -Name Microsoft.SharePoint.PowerShell Informationen zurück, wenn das Snap-In geladen ist. Um alle auf dem System registrierten Snap-Ins aufzulisten, auch wenn sie nicht aktuell geladen sind, dient der Befehl Get-PSSnapin -Registered.11 Dies ist besonders nützlich für die Fehlerbehebung, falls der Add-PSSnapin-Befehl fehlschlägt.
2.4. Gängige Fehlerbehandlung für Snap-Ins
Bei der Arbeit mit Snap-Ins in SharePoint Server 2019 treten typische Fehlerszenarien auf, deren Behandlung für robuste Skripte unerlässlich ist.
Ein häufiger Fehler tritt auf, wenn versucht wird, ein bereits geladenes Snap-In erneut hinzuzufügen. Um dies zu vermeiden, hat sich folgendes Muster etabliert:
PowerShell
if ((Get-PSSnapin 'Microsoft.SharePoint.PowerShell' -ErrorAction SilentlyContinue) -eq $null) {
Add-PSSnapin 'Microsoft.SharePoint.PowerShell'
}
Hierbei unterdrückt -ErrorAction SilentlyContinue eine Fehlermeldung, falls Get-PSSnapin das Snap-In nicht findet, und ermöglicht so das Laden nur bei Bedarf.12
Die Fehlermeldung „Der Windows PowerShell-Snap-In ‚Microsoft.SharePoint.PowerShell‘ ist auf diesem Computer nicht installiert“ (oft mit dem Fehlercode AddPSSnapInRead) tritt typischerweise auf, wenn das Skript auf einem System ausgeführt wird, auf dem SharePoint Server nicht installiert ist oder die SharePoint-Installation beschädigt ist.14 Das Snap-In muss während der SharePoint-Installation korrekt registriert worden sein.
Des Weiteren prüft Add-PSSnapin die Version des Snap-Ins, um die Kompatibilität mit der aktuellen PowerShell-Version sicherzustellen. Bei Inkompatibilität wird ein Fehler gemeldet.2
Die Fehlerbehandlung für Snap-Ins in SharePoint 2019 konzentriert sich somit oft auf die Existenz und den geladenen Zustand des Snap-Ins selbst. Dies führte dazu, dass viele für SharePoint 2019 entwickelte PowerShell-Skripte, die eine breite Anwendbarkeit anstrebten, einen Standardblock an Code am Anfang enthielten, um die Verfügbarkeit des Snap-Ins sicherzustellen.
3. PowerShell-Cmdlet-Verwaltung in SharePoint Server Subscription Edition: Der Paradigmenwechsel zu Modulen
Mit SharePoint Server Subscription Edition vollzieht Microsoft einen signifikanten Architekturwechsel bei der Bereitstellung von PowerShell-Cmdlets für die lokale SharePoint-Verwaltung: den Übergang von PSSnap-Ins zu PowerShell-Modulen.
3.1. Einführung des SharePoint Server-Moduls (z.B. sharepoint-server)
Die SharePoint Server Subscription Edition ersetzt das bisherige PSSnap-In durch ein PowerShell-Modul für die Bereitstellung ihrer On-Premises-Cmdlets.1 In der Microsoft-Dokumentation wird dieses Modul oft als das sharepoint-server-Modul bezeichnet, insbesondere in den URLs der Cmdlet-Referenzen.16 Es ist jedoch wichtig zu beachten, dass der tatsächliche Modulname, der in PowerShell-Befehlen wie Get-Module oder Import-Module verwendet wird, weiterhin Microsoft.SharePoint.PowerShell lauten kann.18 Entscheidend ist hierbei weniger der exakte Name als vielmehr die grundlegende Verhaltensänderung, die mit der Umstellung auf ein Modul einhergeht. Module stellen die moderne, von Microsoft empfohlene Methode zur Paketierung und Verteilung von PowerShell-Cmdlets dar und bieten gegenüber Snap-Ins erhebliche Vorteile in Bezug auf Flexibilität und Bereitstellung.3
3.2. Automatische Cmdlet-Verfügbarkeit: Die Stärke von Modulen
Die bedeutendste Neuerung in SharePoint Server Subscription Edition ist die automatische Verfügbarkeit der SharePoint Server-Cmdlets. Diese sind nun in jeder Windows PowerShell-Konsole (Standard powershell.exe, PowerShell ISE usw.) ohne die Notwendigkeit eines expliziten Add-PSSnapin-Befehls oder in den meisten Fällen auch ohne Import-Module zugänglich.1 Dies wird durch die Auto-Ladefunktion von PowerShell für Module ermöglicht: Wird ein Befehl aus einem installierten Modul, das sich in einem der im $env:PSModulePath definierten Verzeichnisse befindet, zum ersten Mal in einer Sitzung aufgerufen, importiert PowerShell das entsprechende Modul automatisch.
Diese Umstellung vereinfacht die Skripterstellung erheblich, da der oft vergessene oder fehleranfällige Schritt des manuellen Ladens des Snap-Ins 10 entfällt. Skript-Präambeln werden kürzer und die Einstiegshürde für die PowerShell-Nutzung mit SharePoint sinkt.
3.3. Die veränderte Rolle der SharePoint Management Shell und SharePoint.ps1
Die SharePoint Management Shell ist auch in SharePoint Server Subscription Edition weiterhin enthalten, um Administratoren eine vertraute Umgebung zu bieten.1 Ihr Alleinstellungsmerkmal, das automatische Laden der SharePoint-Cmdlets, ist nun jedoch auf alle PowerShell-Konsolen ausgeweitet worden. Das Skript SharePoint.ps1, das in SharePoint 2019 für das Laden des Snap-Ins via Add-PSSnapin zuständig war 7, führt wahrscheinlich weiterhin Initialisierungsaufgaben speziell für die Umgebung der Management Shell durch. Dazu könnten das Setzen von Ausführungsrichtlinien, spezifischen Variablen oder das Konfigurieren der Thread-Optionen 7 gehören. Die primäre Methode für die Cmdlet-Verfügbarkeit über alle Konsolen hinweg ist nun jedoch das automatische Laden von Modulen. Die Management Shell wandelt sich somit von einer Notwendigkeit für den bequemen Cmdlet-Zugriff zu einer optionalen, vertrauten Schnittstelle oder einer spezialisierten Umgebung.
3.4. Überprüfen der Modul-Verfügbarkeit
Um die Verfügbarkeit des SharePoint Server-Moduls zu überprüfen, stehen entsprechende Cmdlets zur Verfügung:
- Mit Get-Module -Name Microsoft.SharePoint.PowerShell -ListAvailable (oder sharepoint-server, falls dies der abfragbare Name sein sollte) kann geprüft werden, ob das Modul installiert und für PowerShell auffindbar ist. Dieses Vorgehen ist analog zur Überprüfung anderer SharePoint-bezogener Module.18
- Get-Module -Name Microsoft.SharePoint.PowerShell zeigt an, ob das Modul bereits in die aktuelle Sitzung geladen wurde.
- Sollte ein explizites Laden erforderlich sein (z.B. zur Fehlerbehebung oder falls das automatische Laden fehlschlägt), kann dies mit Import-Module Microsoft.SharePoint.PowerShell erfolgen.18
3.5. Fehlerbehandlung bei Modulen
Die Fehlerbehandlung im Kontext von Modulen in SharePoint Server Subscription Edition unterscheidet sich von der bei Snap-Ins:
- „Cmdlet nicht erkannt“ / „Modul nicht gefunden“: Diese Fehlermeldung 5 deutet darauf hin, dass das SharePoint Server-Modul nicht korrekt installiert ist, sein Pfad nicht in der Umgebungsvariable $env:PSModulePath enthalten ist oder das Modul beschädigt ist. Eine Reparatur der SharePoint-Installation könnte in solchen Fällen notwendig sein.21
- Standard-PowerShell-Fehlerbehandlung: Für eine robuste Fehlerbehandlung bei der Ausführung spezifischer SharePoint-Cmdlets sollten try-catch-Blöcke verwendet werden. Dies entspricht der allgemeinen Best Practice in PowerShell.22
- Fehler beim Laden von Modulen: Wenn Import-Module explizit verwendet wird und fehlschlägt, liefert es spezifische Fehlermeldungen, wie z.B. „Das angegebene Modul […] wurde nicht geladen, da keine gültige Moduldatei in einem Modulverzeichnis gefunden wurde.“.24
Die Fehlerbehandlung in SharePoint Server Subscription Edition verlagert den Fokus von der Frage „Ist das Snap-In geladen?“ hin zu „Ist das Modul korrekt installiert und werden die Cmdlets wie erwartet ausgeführt?“. Dies rückt die Skripterstellung für SharePoint Server Subscription Edition näher an die allgemeinen PowerShell-Entwicklungspraktiken.
4. Vergleichende Analyse und Hauptunterschiede
Die Umstellung von Snap-Ins auf Module zwischen SharePoint Server 2019 und SharePoint Server Subscription Edition bringt signifikante Unterschiede in der Handhabung von PowerShell-Cmdlets mit sich. Die folgenden Tabellen stellen diese Unterschiede vergleichend dar.
4.1. Tabelle 1: Mechanismen zum Laden von Cmdlets (SP2019 vs. SP SE)
Diese Tabelle bietet einen direkten Vergleich der grundlegenden Änderungen bei der Verfügbarmachung von SharePoint-Cmdlets.
Feature | SharePoint Server 2019 | SharePoint Server Subscription Edition |
Primärer Erweiterungstyp | PSSnap-In | PowerShell-Modul |
Name des Cmdlet-Containers | Microsoft.SharePoint.PowerShell (Snap-In) | Microsoft.SharePoint.PowerShell (als Modul) oder sharepoint-server (Dokumentationsbezeichnung) |
Laden in SharePoint Management Shell | Automatisch via SharePoint.ps1 mittels Add-PSSnapin | Automatisch; Modul wird wahrscheinlich durch SharePoint.ps1 initialisiert oder lädt automatisch beim ersten Cmdlet-Aufruf |
Laden in Standard-PowerShell-Konsole | Manuell mittels Add-PSSnapin | Automatisches Laden des Moduls; Import-Module bei Bedarf für explizite Kontrolle |
Hauptbefehl für manuelles Laden | Add-PSSnapin -Name Microsoft.SharePoint.PowerShell | Import-Module -Name Microsoft.SharePoint.PowerShell |
Dieser tabellarische Vergleich verdeutlicht den Kernwandel und hilft Administratoren, ihre Skriptinitialisierungsroutinen schnell anzupassen.
4.2. Tabelle 2: Überprüfung der Cmdlet-Verfügbarkeit (SP2019 vs. SP SE)
Diese Tabelle unterstützt Administratoren bei der Anpassung ihrer Diagnose- und Verifizierungsskripte.
Aufgabe | SharePoint Server 2019 | SharePoint Server Subscription Edition |
Prüfen, ob Erweiterung in Sitzung geladen ist | Get-PSSnapin -Name Microsoft.SharePoint.PowerShell | Get-Module -Name Microsoft.SharePoint.PowerShell |
Prüfen, ob Erweiterung auf System installiert/ registriert ist | Get-PSSnapin -Registered | Get-Module -Name Microsoft.SharePoint.PowerShell -ListAvailable |
Die Kenntnis der korrekten Befehle zur Überprüfung, ob die notwendigen Komponenten geladen sind, ist für die Fehlerbehebung unerlässlich.
4.3. Tabelle 3: Ansätze zur Fehlerbehandlung (SP2019 vs. SP SE)
Diese Tabelle hebt die Verschiebung bei häufigen Fehlertypen und den entsprechenden Fokus für die Fehlerbehebung hervor.
Szenario | SharePoint Server 2019 | SharePoint Server Subscription Edition |
Fehler: Erweiterung bereits geladen | Behandelt durch if-Bedingung mit Get-PSSnapin -ErrorAction SilentlyContinue | Im Allgemeinen kein Problem beim automatischen Laden von Modulen; Import-Module behandelt dies tolerant |
Fehler: Erweiterung nicht installiert/gefunden | Führt zum Fehlschlagen von Add-PSSnapin | Führt zu „Cmdlet nicht erkannt“, wenn automatisches Laden fehlschlägt oder Modul fehlt |
Primärer Fehlerfokus | Registrierung/Laden des Snap-Ins | Installation/Pfad des Moduls und Ausführung der Cmdlets |
Diese Gegenüberstellung hilft Administratoren, Probleme in SharePoint Server Subscription Edition effektiver zu antizipieren und zu diagnostizieren.
4.4. Implikationen für Skriptmigration und -entwicklung
Bestehende Skripte für SharePoint Server 2019, die Add-PSSnapin Microsoft.SharePoint.PowerShell verwenden, werden in SharePoint Server Subscription Edition wahrscheinlich weiterhin funktionieren. Dies könnte daran liegen, dass das Modul aus Gründen der Abwärtskompatibilität auch als Snap-In geladen werden kann oder dass Add-PSSnapin (insbesondere mit -ErrorAction SilentlyContinue) einfach ignoriert wird, wenn ein Modul die Cmdlets bereits bereitstellt.23 Diese Zeile wird jedoch für nativ für SharePoint Server Subscription Edition entwickelte Skripte weitgehend redundant.
Neue Skripte für SharePoint Server Subscription Edition sollten im Allgemeinen auf explizite Ladebefehle für die SharePoint Server-Cmdlets verzichten.1 Der Fokus sollte auf den Vorteilen liegen: sauberere Skripte und eine einfachere Ausführung in verschiedenen Umgebungen. Obwohl einige alte Skripte möglicherweise ohne Änderungen laufen, empfiehlt es sich für die Subscription Edition, redundante Logik zum Laden von Snap-Ins zu entfernen, um modernere und übersichtlichere Skripte zu erhalten. Migrationsbemühungen sollten die Entfernung dieses Legacy-Codes in Betracht ziehen.
5. Praktische Anleitungen und Best Practices für SharePoint Server Subscription Edition
Die Umstellung auf ein Modul-basiertes System in SharePoint Server Subscription Edition erfordert eine Anpassung der Skripting-Praktiken.
5.1. Aktualisierung bestehender Skripte für Kompatibilität und Best Practice mit SP SE
Für die Anpassung vorhandener Skripte an SharePoint Server Subscription Edition werden folgende Schritte empfohlen:
- Identifizieren und bewerten Sie Zeilen mit Add-PSSnapin Microsoft.SharePoint.PowerShell. In den meisten Fällen können diese für Skripte, die ausschließlich auf SP SE abzielen, entfernt werden.
- Ersetzen Sie Überprüfungen mittels Get-PSSnapin durch äquivalente Get-Module-Befehle, falls eine Verifizierung weiterhin gewünscht ist.
- Stellen Sie sicher, dass Standard-try-catch-Blöcke für die Cmdlet-spezifische Fehlerbehandlung verwendet werden.
5.2. Empfohlene Ansätze zur Sicherstellung der Verfügbarkeit von SharePoint-Cmdlets
Primär sollten sich Administratoren auf die automatische Modul-Ladefunktion von PowerShell verlassen. Eine korrekte Installation von SharePoint Server stellt sicher, dass das Modul in einem für PowerShell auffindbaren Pfad abgelegt wird.
Für kritische Skripte oder zur Fehlerbehebung kann die Verfügbarkeit des Moduls explizit mit Get-Module -Name Microsoft.SharePoint.PowerShell -ListAvailable überprüft werden. Alternativ kann ein Import-Module Microsoft.SharePoint.PowerShell innerhalb eines try-catch-Blocks versucht werden, falls Bedenken hinsichtlich der Umgebungskonfiguration bestehen.18
5.3. Der Status von Add-PSSnapin Microsoft.SharePoint.PowerShell in SP SE
Obwohl SharePoint Server Subscription Edition auf Module umgestellt wurde und Add-PSSnapin für den Zugriff auf On-Premises-Cmdlets im Allgemeinen nicht mehr erforderlich ist, kann dieser Befehl in einigen offiziellen Dokumentationen oder spezifischen Systemskripten (wie z.B. für die Konfiguration des Distributed Cache Service) weiterhin auftauchen, oft in der Form Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue (oder -ea 0).23
Mögliche Gründe hierfür sind:
- Abwärtskompatibilität: Um zu ermöglichen, dass ein einzelnes Skript potenziell sowohl auf älteren SharePoint-Versionen (SP2019, SP2016), die das Snap-In erfordern, als auch auf SP SE ausgeführt werden kann. Der Parameter -ErrorAction SilentlyContinue unterdrückt Fehler, falls das Snap-In in SP SE (wo das Modul die Cmdlets bereitstellt) nicht relevant ist oder nicht gefunden wird.
- Dokumentationsstand/Übernahme: Ältere Skriptbeispiele wurden möglicherweise nicht vollständig aktualisiert, um den Modul-zentrierten Ansatz widerzuspiegeln.
- Spezifische Low-Level-Operationen: In seltenen Fällen könnten bestimmte Low-Level-Konfigurations-Cmdlets oder mit SharePoint gebündelte Skripte diesen Befehl aus spezifischen Initialisierungsgründen verwenden, obwohl dies für allgemeine Verwaltungs-Cmdlets weniger wahrscheinlich ist.
Es ist wichtig, die Persistenz von Add-PSSnapin in einigen Kontexten der Subscription Edition als einen Punkt potenzieller Verwirrung zu verstehen. Dies negiert nicht den primären Wechsel zu Modulen, sondern weist auf pragmatische Überlegungen wie Skriptportabilität oder Altlasten hin. Es ist denkbar, dass die Modul-DLL auch als Snap-In registriert wird, um die Funktion von Add-PSSnapin zu ermöglichen. Dies würde eine robuste Abwärtskompatibilitätsstrategie darstellen, bei der das automatische Laden des Moduls der moderne Standard ist.
Empfehlung: Für neue Skripte, die ausschließlich auf SharePoint Server Subscription Edition abzielen, sollte Add-PSSnapin vermieden werden. Trifft man in bestehenden Skripten oder offiziellen Beispielen darauf, sollte man dessen wahrscheinlichen Zweck (oft Abwärtskompatibilität oder Fehlerunterdrückung) verstehen und wissen, dass die Kern-Cmdlets in SP SE durch das automatisch ladende Modul bereitgestellt werden.
5.4. Fehlerbehebung bei gängigen PowerShell-Problemen in SP SE
- „Cmdlet nicht erkannt“: Überprüfen Sie die SharePoint Server-Installation. Stellen Sie sicher, dass $env:PSModulePath den SharePoint-Modulpfad enthält. Versuchen Sie Import-Module Microsoft.SharePoint.PowerShell -Verbose.
- Berechtigungsprobleme: Stellen Sie sicher, dass der ausführende Benutzer über die erforderlichen Berechtigungen auf Farm-/SQL-Ebene verfügt. Das Cmdlet Add-SPShellAdmin ist hier relevant, um Benutzern die notwendigen Rechte zu gewähren.7 Dies bleibt unabhängig von Snap-In oder Modul kritisch.
- Ausführungsrichtlinie (Execution Policy): Stellen Sie sicher, dass Skripte ausgeführt werden können. SharePoint erfordert mindestens die Richtlinie RemoteSigned.7
6. Fazit
Der Übergang von PSSnap-Ins in SharePoint Server 2019 zu PowerShell-Modulen in SharePoint Server Subscription Edition stellt eine signifikante Verbesserung und Modernisierung der PowerShell-basierten Verwaltung dar. Diese Änderung ist nicht nur eine technische Anpassung, sondern reflektiert einen Wandel hin zu größerer Benutzerfreundlichkeit und der Einhaltung plattformweiter PowerShell-Best Practices, was letztendlich der SharePoint-Administratorengemeinschaft zugutekommt.
Die Hauptvorteile der neuen Modul-Architektur sind ein vereinfachter Zugriff auf Cmdlets, da diese nun in allen PowerShell-Konsolen automatisch verfügbar sind, sowie sauberere und leichter verständliche Skripte durch den Wegfall redundanter Ladebefehle. Obwohl die SharePoint Management Shell weiterhin für eine vertraute Umgebung sorgt, ist ihr früherer exklusiver Vorteil des automatischen Ladens von Cmdlets nun auf alle PowerShell-Konsolen ausgeweitet worden.
Administratoren und Entwickler sind angehalten, ihre Skripting-Praktiken anzupassen, um die neue Modul-basierte Architektur in SharePoint Server Subscription Edition optimal zu nutzen. Dies beinhaltet das Entfernen veralteter Add-PSSnapin-Befehle in für SP SE entwickelten Skripten und die Verwendung von Get-Module zur Überprüfung der Modulverfügbarkeit. Gleichzeitig ist es wichtig, die Nuancen zu verstehen, wie das gelegentliche Auftreten von Add-PSSnapin in bestimmten Dokumentationen oder Skripten, was oft auf Abwärtskompatibilität oder spezifische Kontexte zurückzuführen ist.
Diese Entwicklung signalisiert Microsofts fortlaufendes Engagement, die Verwaltungserfahrung für On-Premises SharePoint zu verbessern, selbst in einer Zeit, in der Cloud-Dienste eine dominante Rolle spielen. Die Angleichung an moderne PowerShell-Standards erleichtert nicht nur die Arbeit mit SharePoint Server Subscription Edition, sondern macht auch PowerShell-Kenntnisse besser übertragbar.
Referenzen
- New and improved features in SharePoint Server Subscription Edition – Learn Microsoft, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/sharepoint/what-s-new/new-and-improved-features-in-sharepoint-server-subscription-edition
- Add-PSSnapin (Microsoft.PowerShell.Core), Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/add-pssnapin?view=powershell-5.1
- Modules and Snap-ins – PowerShell | Microsoft Learn, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/powershell/scripting/developer/module/modules-and-snap-ins?view=powershell-7.5
- What’s the difference between Add-PsSnapIn and Import-Module – Stack Overflow, Zugriff am Mai 8, 2025, https://stackoverflow.com/questions/5038887/whats-the-difference-between-add-pssnapin-and-import-module
- Unofficial PowerShell module for SharePoint 2019 – Microsoft Community Hub, Zugriff am Mai 8, 2025, https://techcommunity.microsoft.com/discussions/sharepoint_general/unofficial-powershell-module-for-sharepoint-2019/326148
- Benefits of using PowerShell with SharePoint | Microsoft Learn, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/microsoft-365/community/benefits-of-using-powershell-with-sharepoint
- SharePoint Server Cmdlets | Microsoft Learn, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/powershell/sharepoint/sharepoint-server/sharepoint-server-cmdlets
- Is SharePoint 2016 Management Shell the same as Sharepoint …, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/answers/questions/1112505/is-sharepoint-2016-management-shell-the-same-as-sh
- Most Useful SharePoint PowerShell Commands – Netwrix Blog, Zugriff am Mai 8, 2025, https://blog.netwrix.com/2018/11/12/most-useful-sharepoint-powershell-commands/
- Getting Started: The Basics of Using PowerShell with SharePoint – Cameron Dwyer, Zugriff am Mai 8, 2025, https://camerondwyer.com/2014/06/18/getting-started-the-basics-of-using-powershell-with-sharepoint/
- Get-PSSnapin (Microsoft.PowerShell.Core), Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/get-pssnapin?view=powershell-5.1
- How to check if PowerShell snap-in is already loaded before calling Add-PSSnapin, Zugriff am Mai 8, 2025, https://stackoverflow.com/questions/1477994/how-to-check-if-powershell-snap-in-is-already-loaded-before-calling-add-pssnapin
- Unable to execute: Add-PSSnapin Microsoft.SharePoint.PowerShell, Zugriff am Mai 8, 2025, https://sharepoint.stackexchange.com/questions/86097/unable-to-execute-add-pssnapin-microsoft-sharepoint-powershell
- Error when adding SharePoint Powershell snapin – Stack Overflow, Zugriff am Mai 8, 2025, https://stackoverflow.com/questions/24455271/error-when-adding-sharepoint-powershell-snapin
- Windows PowerShell snap-in ‚Microsoft.Sharepoint.Powershell‘ is not installed on this computer? – Stack Overflow, Zugriff am Mai 8, 2025, https://stackoverflow.com/questions/43997587/windows-powershell-snap-in-microsoft-sharepoint-powershell-is-not-installed-on
- Get-SPProduct (sharepoint-server) | Microsoft Learn, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/powershell/module/sharepoint-server/get-spproduct?view=sharepoint-server-ps
- sharepoint-server Module | Microsoft Learn, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/powershell/module/sharepoint-server/?view=sharepoint-server-ps
- Remove Unsupported features from a site collection while migrating from SP 2016 to SP Subscription Edition – Learn Microsoft, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/answers/questions/2240904/remove-unsupported-features-from-a-site-collection
- Need help with SharePoint Online Cmdlets – Microsoft Community, Zugriff am Mai 8, 2025, https://answers.microsoft.com/en-us/msoffice/forum/all/need-help-with-sharepoint-online-cmdlets/cbe355a0-e215-4373-ba27-f76c6a6917d5
- Using SharePoint PnP PowerShell Modules Side-by-Side (2013, 2016, & Online), Zugriff am Mai 8, 2025, https://thechriskent.com/2018/02/14/using-sharepoint-pnp-powershell-modules-side-by-side-2013-2016-online/
- Repair SharePoint Server Subscription Edition – Learn Microsoft, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/sharepoint/install/repair-sharepoint-server-subscription-edition
- Error Handling in modules – PowerShell Forums, Zugriff am Mai 8, 2025, https://forums.powershell.org/t/error-handling-in-modules/4657
- Manage the Distributed Cache service in SharePoint Server …, Zugriff am Mai 8, 2025, https://learn.microsoft.com/en-us/sharepoint/administration/manage-the-distributed-cache-service
- Try to get the snapin „Microsoft.SharePoint.PowerShell“ in Powershell but i get an error, Zugriff am Mai 8, 2025, https://sharepoint.stackexchange.com/questions/255972/try-to-get-the-snapin-microsoft-sharepoint-powershell-in-powershell-but-i-get
Disclaimer: Dieser Artikel wurde unter Mitwirkung von Gemini, einer KI von Google, erstellt.