Magic Quadrant™ pour la gestion des accès privilégiés 2025 : Netwrix reconnue pour la quatrième année consécutive. Téléchargez le rapport.

Plateforme
Centre de ressourcesBlog
Top 10 des commandes PowerShell de stratégie de groupe

Top 10 des commandes PowerShell de stratégie de groupe

Apr 11, 2019

En plus de la Group Policy Management Console (GPMC), Microsoft fournit un ensemble de cmdlets Windows PowerShell que vous pouvez utiliser pour gérer la Group Policy. Pour utiliser les cmdlets PowerShell de Group Policy, vous devez avoir GPMC installé sur l'appareil où vous exécuterez les cmdlets. Pour vérifier si le module PowerShell de Group Policy est installé sur un appareil, exécutez la commande ci-dessous, qui affichera tous les cmdlets de Group Policy disponibles si le module est installé.

      Get-Command -Module GroupPolicy
      

Contenu connexe sélectionné :

Création d'un nouvel objet de stratégie de groupe

Commençons par créer un nouvel objet de stratégie de groupe (GPO). La commande ci-dessous crée un nouveau GPO appelé ‘Netwrix PCs’ et ajoute un commentaire pour décrire son objectif :

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

La commande crée un objet de stratégie de groupe (GPO) vide sans aucun paramètre. Si vous avez des GPO de démarrage configurés dans votre Active Directory domain, vous pouvez créer un nouveau GPO basé sur leurs paramètres. La commande suivante crée un nouveau GPO appelé ‘Netwrix PCs’ basé sur le GPO ‘Windows 10 MS Security Settings’ :

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

Vous pouvez éventuellement lier le GPO à un domaine, à l'unité organisationnelle (OU) du contrôleur de domaine ou à un site en utilisant le piping. La commande ci-dessous crée un nouveau GPO et le lie à l'OU Clients dans le domaine ad.contoso.com :

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

Pour dissocier un objet de stratégie de groupe, utilisez la cmdlet Remove-GPLink :

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

Image

Figure 1. Comment lier et délier un GPO

Obtenir des informations sur un GPO

Une fois qu'une stratégie de groupe est créée, vous pouvez utiliser Get-GPO pour obtenir des informations telles que le statut de la GPO, l'heure de création et l'heure de la dernière modification :

      Get-GPO -Name "Netwrix PCs"
      

Si vous souhaitez plus d'informations, redirigez l'objet créé par Get-GPO vers Get-GPOReport. Le script ci-dessous crée un rapport HTML qui fournit des informations sur l'objet de stratégie de groupe semblables à ce que vous pourriez voir dans la console Group Policy Management:

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

Image

Figure 2. Rapport HTML avec des données détaillées sur un GPO spécifique

Configuration des paramètres de stratégie de groupe

Si vous connaissez l'emplacement pour un paramètre de stratégie de groupe basé sur le registreGroup Policy setting, vous pouvez utiliser la cmdlet Set-GPRegistryValue pour le configurer. Les paramètres de stratégie de groupe basés sur le registre sont ceux qui apparaissent sous Modèles d'administration dans GPMC. Set-GPRegistryValue peut également être utilisé pour définir des valeurs de registre qui ne sont pas couvertes par les paramètres de stratégie de groupe. Par exemple, si vous souhaitez configurer des paramètres de registre pour des applications tierces qui n'ont pas de fichier ADMX pour la stratégie de groupe, Set-GPRegistryValue est un moyen rapide de configurer les paramètres dont vous avez besoin. La commande suivante définit un délai d'attente de l'économiseur d'écran de 300 secondes pour l'utilisateur connecté :

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

Vous pouvez spécifier les paramètres de configuration de l'ordinateur ou de l'utilisateur en utilisant Set-GPRegistryValue. Le chemin du registre dans le paramètre -Key ci-dessous commence par « HKCU » (qui signifie « HKEY_CURRENT_USER »). Si vous souhaitez configurer un paramètre d'ordinateur à la place, remplacez « HKCU » par « HKLM » (qui se développe en HKEY_LOCAL_MACHINE).

Pour obtenir des informations détaillées sur une clé de registre configurée dans un GPO, utilisez Get-GPRegistryValue :

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

Image

Figure 3. Comment obtenir des informations détaillées sur une clé de registre configurée dans un GPO

Pour supprimer un paramètre de registre d'une GPO, utilisez Remove-GPRegistryValue :

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

Les trois cmdlets ci-dessus ont des équivalents dans les Préférences de stratégie de groupe si vous décidez d'utiliser les Préférences au lieu des Stratégies pour définir les clés de registre : Set-GPPrefRegistryValue, Get-GPPrefRegistryValue, et Remove-GPPrefRegistryValue.

Application des paramètres de stratégie de groupe

À condition que votre GPO soit lié à un domaine, une OU ou un site, il s'appliquera aux objets utilisateur et ordinateur en dessous de l'endroit où il est lié. Mais si vous souhaitez forcer une mise à jour de la Group Policy update sur un serveur distant ou un autre appareil, vous pouvez utiliser Invoke-GPUpdate. Exécuter Invoke-GPUpdate sans aucun paramètre forcera une mise à jour des paramètres de configuration utilisateur et ordinateur sur l'ordinateur local. La commande ci-dessous force une mise à jour de la Group Policy sur server1 pour les paramètres de configuration utilisateur uniquement :

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

Examen des GPOs appliqués à un utilisateur ou à un ordinateur

Pour obtenir des informations sur les GPOs appliqués à un utilisateur ou à un ordinateur, vous pouvez générer un rapport de l'ensemble résultant des stratégies (RSoP) en utilisant la cmdlet Get-GPResultantSetOfPolicy. La commande ci-dessous génère un rapport pour l'ordinateur appelé “dc1” et écrit les résultats dans le répertoire c:temp :

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

Image

Figure 4. Comment obtenir des informations sur les GPOs appliqués à un utilisateur ou un ordinateur

Les cmdlets PowerShell peuvent être très utiles pour gérer les stratégies de groupe. Cependant, configurer les paramètres à l'intérieur des objets de stratégie de groupe (GPO) à l'aide de PowerShell n'est pas facile car les paramètres de stratégie de groupe n'ont pas été conçus pour une configuration basée sur le texte.

Partager sur

En savoir plus

À propos de l'auteur

Asset Not Found

Russell Smith

Consultant en TI

Consultant en TI et auteur spécialisé dans les technologies de gestion et de sécurité. Russell possède plus de 15 ans d'expérience dans le domaine des TI, il a écrit un livre sur la sécurité Windows et a coécrit un texte pour la série de cours académiques officiels de Microsoft (MOAC).