PowerShell — Centre de Ressources

Présentation

PowerShell est un shell en ligne de commande et un langage de script orienté objet développé par Microsoft. Basé sur le framework .NET, il manipule des objets plutôt que du texte brut, ce qui le rend particulièrement puissant pour l’automatisation de tâches Windows, l’administration Active Directory et la gestion des infrastructures.


Fondamentaux du langage

Bases

Basics

Syntaxe essentielle pour écrire ses premiers scripts PowerShell.

  • Variables et types ($var, [int], [string]…)
  • Conditions : if / else, switch
  • Boucles : for, while, foreach
  • Fonctions avec param()
  • Classes et objets (.NET)
  • Gestion d’erreurs : try / catch

Opérateurs de comparaison

Opérateurs de comparaison PowerShell

PowerShell utilise des mots-clés à la place des symboles classiques.

OpérateurRôle
-eq / -neÉgalité / différence
-gt / -ltSupérieur / inférieur
-like / -matchWildcard / regex
-and / -or / -notLogique booléenne
-contains / -inAppartenance à une collection
-is / -isnotTest de type .NET

Scripting avancé

Fonctionnalités avancées

Advanced

Aller plus loin avec les modules, le pipeline objet et les interactions système.

  • Modules : Import-Module, Install-Module, Get-Command
  • Cmdlets clés : Where-Object, Sort-Object, Select-Object
  • Pipeline objet : filtrage, comptage, export CSV
  • Fichiers & dossiers : Get-ChildItem, Get-Content, Copy-Item
  • Manipulation JSON : ConvertFrom-Json, ConvertTo-Json
  • REST API : Invoke-RestMethod (GET / POST)
  • Processus & services : Get-Process, Restart-Service

Active Directory & Sécurité

Active Directory

Active Directory

Administrer les objets AD (utilisateurs, groupes, ordinateurs).

  • Get-ADUser / New-ADUser / Set-ADUser
  • Réinitialisation de mot de passe
  • Add-ADGroupMember / Get-ADGroupMember
  • Get-ADComputer
Import-Module ActiveDirectory

GPO

GPO

Gérer les stratégies de groupe via PowerShell.

  • Get-GPO / New-GPO
  • Lier une GPO à une OU : New-GPLink
  • Sauvegarder / Restaurer : Backup-GPO
  • Rapport HTML : Get-GPOReport
  • gpupdate /force
Import-Module GroupPolicy

ACL — AGDLP

ACL (AGDLP)

Structurer les droits sur les ressources selon le modèle AGDLP.

Accounts → Global → Domain Local → Permissions

  • Créer groupes Global et DomainLocal
  • Imbriquer les groupes
  • Appliquer les ACL avec Set-Acl

Administration en mode Core (sans GUI)

Active Directory (Core)

Active directory (Core)

Installer et promouvoir un contrôleur de domaine sans interface graphique.

  • Install-WindowsFeature AD-Domain-Services
  • Install-ADDSForest (forêt + DNS intégré)
  • Définition du mot de passe DSRM
  • Get-ADDomain / Get-ADDomainController

Serveur DHCP (Core)

Serveur DHCP (Core)

Déployer un serveur DHCP complet en ligne de commande.

  • Add-DhcpServerv4Scope — plage d’adresses
  • Options : passerelle (3), DNS (6), suffixe DNS (15)
  • Set-DhcpServerv4Scope — activer l’étendue
  • Get-DhcpServerv4Scope — vérification

Utilitaires

Forcer la langue française sur Windows

Forcer la langue Française sur Windows

Appliquer les paramètres régionaux français en une seule exécution.

Set-WinUILanguageOverride -Language fr-FR
Set-WinUserLanguageList -LanguageList fr-FR -Force
Set-WinSystemLocale fr-FR
Set-Culture fr-FR
Set-WinHomeLocation -GeoId 84

Rappels essentiels

CmdletDescription
Get-Help <cmdlet>Afficher l’aide d’une commande
Get-Command *mot*Rechercher une commande
Get-Module -ListAvailableLister les modules disponibles
$_Variable automatique de pipeline
Write-Output / Write-HostAfficher du texte
Export-CsvExporter vers un fichier CSV
Invoke-CommandExécuter une commande à distance
Set-ExecutionPolicy RemoteSignedAutoriser l’exécution des scripts

Progression recommandée

  1. Maîtriser la syntaxe de base → Basics
  2. Comprendre les opérateurs → Opérateurs de comparaison PowerShell
  3. Explorer le pipeline et les modules → Advanced
  4. Administrer Active Directory → Active Directory et GPO
  5. Gérer les droits avec le modèle AGDLP → ACL (AGDLP)
  6. Déployer des services en mode Core → Active directory (Core) et Serveur DHCP (Core)

9 items under this folder.