Magic Quadrant™ für Privileged Access Management 2025: Netwrix zum vierten Jahr in Folge anerkannt. Laden Sie den Bericht herunter.

Plattform
Ressourcen­zentrumBlog
Top 10 Group Policy PowerShell-Befehle

Top 10 Group Policy PowerShell-Befehle

Apr 11, 2019

Neben der Group Policy Management Console (GPMC) bietet Microsoft einen Satz von Windows PowerShell-Cmdlets, die Sie zur Verwaltung von Group Policy verwenden können. Um die PowerShell-Cmdlets für Group Policy zu verwenden, müssen Sie GPMC auf dem Gerät installiert haben, auf dem Sie die Cmdlets ausführen werden. Um zu überprüfen, ob das Group Policy PowerShell-Modul auf einem Gerät installiert ist, führen Sie den untenstehenden Befehl aus, der alle verfügbaren Group Policy-Cmdlets anzeigt, falls das Modul installiert ist.

      Get-Command -Module GroupPolicy
      

Ausgewählte verwandte Inhalte:

Erstellen eines neuen Gruppenrichtlinienobjekts

Beginnen wir damit, ein neues Gruppenrichtlinienobjekt (GPO) zu erstellen. Der folgende Befehl erstellt ein neues GPO namens 'Netwrix PCs' und fügt einen Kommentar hinzu, um seinen Zweck zu beschreiben:

      New-GPO -Name "Netwrix PCs" -Comment "Client settings for Netwrix PCs"
      

Der Befehl erstellt eine leere GPO ohne Einstellungen. Wenn Sie Starter-GPOs in Ihrer Active Directory-Domäne konfiguriert haben, können Sie eine neue GPO basierend auf deren Einstellungen erstellen. Der folgende Befehl erstellt eine neue GPO namens ‘Netwrix PCs’ basierend auf der ‘Windows 10 MS Security Settings’ GPO:

      New-GPO -Name "Netwrix PCs" -StarterGPOName "Windows 10 MS Security Settings"
      

Sie können optional die GPO mit einer Domäne, Organisationseinheit (OU) des Domänencontrollers oder einer Site mithilfe von Piping verknüpfen. Der folgende Befehl erstellt eine neue GPO und verknüpft sie mit der OU Clients in der Domäne ad.contoso.com:

      New-GPO -Name "Netwrix PCs" | New-GPLink -Target "ou=clients,dc=ad,dc=contoso,dc=com"
      

Um ein GPO zu entkoppeln, verwenden Sie das Remove-GPLink Cmdlet:

      Remove-GPLink -Name "Netwrix PCs" -Target "ou=clients,dc=ad,dc=contoso,dc=com"
      

Image

Abbildung 1. Wie man ein GPO verknüpft und die Verknüpfung aufhebt

Informationen zu einem GPO erhalten

Sobald ein GPO erstellt wurde, können Sie Get-GPO verwenden, um Informationen wie GPO-Status, Erstellungszeit und letzte Änderungszeit zurückzugeben:

      Get-GPO -Name "Netwrix PCs"
      

Wenn Sie mehr Informationen wünschen, leiten Sie das durch Get-GPO erstellte Objekt an Get-GPOReport weiter. Das untenstehende Skript erstellt einen HTML-Bericht, der Informationen über die GPO ähnlich denen liefert, die Sie in der Group Policy Management-Konsole sehen würden:

      Get-GPO -Name "Netwrix PCs" | Get-GPOReport -ReportType HTML -Path c:tempreport.html
      

Image

Abbildung 2. HTML-Bericht mit detaillierten Daten über eine spezifische GPO

Konfigurieren von Gruppenrichtlinieneinstellungen

Wenn Sie den Speicherort für eine registry-basierte Group Policy setting kennen, können Sie das Cmdlet Set-GPRegistryValue verwenden, um es zu konfigurieren. Registry-basierte Group Policy-Einstellungen sind jene, die unter Administrative Vorlagen in der GPMC erscheinen. Set-GPRegistryValue kann auch verwendet werden, um Registrierungswerte zu setzen, die nicht von Group Policy-Einstellungen abgedeckt sind. Zum Beispiel, wenn Sie Registrierungseinstellungen für Drittanbieteranwendungen konfigurieren möchten, die keine ADMX-Datei für Group Policy haben, ist Set-GPRegistryValue eine schnelle Möglichkeit, die benötigten Einstellungen zu konfigurieren. Der folgende Befehl setzt ein Bildschirmschoner-Zeitlimit von 300 Sekunden für den angemeldeten Benutzer:

      Set-GPRegistryValue -Name "Netwrix PCs" -Key "HKCUSoftwarePoliciesMicrosoftWindowsControl PanelDesktop" -ValueName ScreenSaveTimeOut -Type DWord -Value 300
      

Sie können entweder Computerkonfigurations- oder Benutzerkonfigurationseinstellungen mit Set-GPRegistryValue festlegen. Der Registrierungspfad im -Key Parameter unten beginnt mit „HKCU“ (steht für „HKEY_CURRENT_USER“). Wenn Sie stattdessen eine Computereinstellung konfigurieren möchten, ersetzen Sie „HKCU“ durch „HKLM“ (steht für HKEY_LOCAL_MACHINE).

Um detaillierte Informationen über einen in einer GPO konfigurierten Registrierungsschlüssel zu erhalten, verwenden Sie Get-GPRegistryValue:

      Get-GPRegistryValue -Name "Netwrix PCs" -Key "HKCUSoftwarePoliciesMicrosoftWindowsControl PanelDesktop"
      

Image

Abbildung 3. Wie man detaillierte Informationen über einen in einer GPO konfigurierten Registrierungsschlüssel erhält

Um eine Registrierungseinstellung von einer GPO zu entfernen, verwenden Sie Remove-GPRegistryValue:

      Remove-GPRegistryValue -Name "Netwrix PCs" -Key "HKCUSoftwarePoliciesMicrosoftWindowsControl PanelDesktop" -ValueName ScreenSaveTimeOut
      

Die drei oben genannten Cmdlets haben Group Policy Preference-Entsprechungen, falls Sie sich entscheiden, Preferences anstelle von Policies zu verwenden, um Registrierungsschlüssel zu setzen: Set-GPPrefRegistryValue, Get-GPPrefRegistryValue, und Remove-GPPrefRegistryValue.

Anwenden von Gruppenrichtlinieneinstellungen

Vorausgesetzt, dass Ihre GPO mit einer Domäne, OU oder Site verknüpft ist, wird sie auf Benutzer- und Computerobjekte unterhalb der Verknüpfung angewendet. Wenn Sie jedoch ein Group Policy update auf einem entfernten Server oder einem anderen Gerät erzwingen möchten, können Sie Invoke-GPUpdate verwenden. Wenn Sie Invoke-GPUpdate ohne Parameter ausführen, wird ein Update der Benutzer- und Computerkonfigurationseinstellungen auf dem lokalen Computer erzwungen. Der folgende Befehl erzwingt ein Group Policy Update auf server1 nur für Benutzerkonfigurationseinstellungen:

      Invoke-GPUpdate -Computer "adserver1" -Target "User"
      

Überprüfung, welche GPOs auf einen Benutzer oder Computer angewendet werden

Um Informationen darüber zu erhalten, welche Gruppenrichtlinienobjekte (GPOs) auf einen Benutzer oder Computer angewendet werden, können Sie einen Resultant Set of Policy (RSoP)-Bericht mit dem Cmdlet Get-GPResultantSetOfPolicy erstellen. Der folgende Befehl generiert einen Bericht für den Computer namens „dc1“ und schreibt die Ergebnisse in das Verzeichnis c:temp:

      Get-GPResultantSetOfPolicy -Computer dc1 -ReportType HTML -Path c:tempdc1rsop.html
      

Image

Abbildung 4. Wie man Informationen darüber erhält, welche GPOs auf einen Benutzer oder Computer angewendet werden

PowerShell-Cmdlets können für die Verwaltung von Gruppenrichtlinien sehr nützlich sein. Allerdings ist das Konfigurieren von Einstellungen in GPOs mit PowerShell nicht einfach, da Gruppenrichtlinieneinstellungen nicht für textbasierte Konfigurationen konzipiert wurden.

Teilen auf

Erfahren Sie mehr

Über den Autor

Asset Not Found

Russell Smith

IT-Berater

IT-Berater und Autor, der sich auf Management- und Sicherheitstechnologien spezialisiert hat. Russell verfügt über mehr als 15 Jahre Erfahrung in der IT, er hat ein Buch über Windows-Sicherheit geschrieben und er hat einen Text für die Official Academic Course (MOAC) Serie von Microsoft mitverfasst.