PowerShell 7 mit Gruppenrichtlinien verwalten

    Administrative Vorlage für PowerShell 7Power­Shell Core fehlte bis dato die Möglich­keit, Einstellungen zentral über Gruppen­richt­linien zu konfi­gurieren. Die Preview von PowerShell 7 behebt diese Ein­schränkung mit einer eigenen ADMX-Vorlage. Sie ent­hält alle von Windows PowerShell be­kannten Ein­stellungen sowie eine neue Sicher­heits­option.

    Während PowerShell Core 6 aufgrund seiner funktionalen Defizite im Vergleich zu Windows PowerShell hauptsächlich unter Linux verwendet wurde, soll PowerShell 7 die von Microsoft empfohlene Version auf allen unterstützten Plattformen werden. Windows PowerShell erhält dagegen keine neuen Features mehr.

    Wenn PowerShell 7 die Nachfolge für Windows PowerShell antreten soll, dann muss diese Version nicht nur alle vor­handenen Module unterstützen, sondern wie ihr Vorgänger auch über GPOs zu verwalten sein. Seit der Preview 4 gehört daher ein ADMX-Template inklusive einer englischen Sprachdatei zum Lieferumfang.

    Die meisten GPO-Einstellungen für PowerShell 7 stammen bereits von Windows PowerShell.

    Wenn man diese nach %systemroot%\policydefinitions oder in den Central Store kopiert, dann taucht im GPO-Editor ein neuer Container namens PowerShell Core auf. Anders als die Einstellungen für Windows PowerShell liegen jene für die Version 7 nicht unter Administrative Vorlagen => Windows-Komponenten, sondern direkt unter Administrative Vorlagen (sowohl für Computer als auch Benutzer).

    Übernahme der Konfiguration von Windows PowerShell

    Nachdem die Einstellungen weitgehend identisch sind mit jenen von Windows PowerShell, fällt der Umstieg ziemlich leicht. Besonders praktisch dabei ist, dass jede Einstellung die Option Use Windows PowerShell Policy Setting bietet.

    Über eine eigene Option lässt sich die Konfiguration der entsprechenden Einstellung aus Windows PowerShell übernehmen.

    Hakt man diese Checkbox an, dann übernimmt PowerShell 7 auto­matisch die jeweilige Konfiguration von Windows PowerShell. Damit spart man sich bis zum endgültigen Umstieg auf die Version 7 eine doppelte Verwaltung von PowerShell.

    Die meisten GPO-Einstellungen für PowerShell betreffen sicherheits­relevante Aspekte für Scripts und die Kommandozeile. So kann man auf diesem Weg die Execution Policy verbindlich setzen oder eingegebene Befehle mitschneiden.

    Log-Einträge für PowerShell Core in der Ereignisanzeige

    Beim Deep Scriptblock Logging ist zu beachten, dass PowerShell 7 die Logs direkt unter Anwendungs- und Dienst­protokolle schreibt, während Windows PowerShell seine unter Microsoft => Windows => PowerShell aufzeichnet.

    Session Configuration erzwingen

    Die ADMX-Vorlage für PowerShell 7 bringt eine neue Einstellung, mit der Admins den Benutzern eine Session Configuration fest zuordnen können. Sie wirkt unabhängig davon, ob der Zugriff lokal oder von einem Remote-Computer erfolgt.

    Über eine neue GPO-Einstellung kann man Benutzern eine Session Configuration verbindlich zuordnen.

    Mit Hilfe einer Session Configuration lässt sich der Sprachumfang von PowerShell einschränken, indem man etwa nur bestimmte Cmdlets zulässt. Außerdem ist es über diese GPO-Einstellung möglich, PowerShell 7 in den Constrained Language Mode zu versetzen, ohne dass man dafür auf AppLocker oder ein anderes Tool für das Application Whitelisting zurückgreifen muss.

    Verfügbarkeit

    PowerShell 7 liegt aktuell als Release Candidate vor und soll im Laufe dieses Monats offiziell freigegeben werden. Es kann von Github heruntergeladen werden. Bei der Installation hilft diese Anleitung.

    Keine Kommentare