Audit du parc + Activation des postes sans licences (Script PowerShell)

Compétences mises en œuvres :

Objectifs et contexte

    • Problématique : Lors d’un stage nous nous sommes aperçus qu’un certain nombre de poste n’avait pas de licence Windows active. J’ai donc développé une solution permettant de faire un inventaire complet du parc et d’activer les postes via le serveur KMS. 
    •  
    • Technologies utilisées : Script PowerShell, GPO 
    •  
    • Fonctionnalités principales :  
    • Audit des postes et récupération des éditions de Windows, status de la licence, date et heure de l’audit. 
    • Alimentation d’un fichier CSV regroupant tous les postes audités dans un répertoire partagé caché 
    • Activation de Windows via KMS qui s’exécute si le poste ne dispose pas de licence Windows. 

Déroulement du projet :

  • Tests d’activation de Windows en PowerShell via KMS
    En premier lieu des tests d’activation de Windows en PowerShell via KMS ont été effectués afin de déterminer comment activer Windows avec cette méthode. 
  • Tests de récupération des infos de licence Windows
    J’ai développé un script permettant de réaliser un audit détaillé de l’ensemble des postes. Cette solution m’a permis de récupérer l’édition exacte de Windows et les informations relatives à la licence enregistrée.
  • Création d’un partage caché stockant le fichier CSV de l’inventaire
    Un partage réseau caché a été configuré afin d’héberger le fichier CSV utilisé par le script pour compléter l’inventaire du parc, tout en limitant l’accès direct des utilisateurs. Cette configuration rend le répertoire invisible dans l’explorateur de fichiers, de sorte que seuls ceux connaissant le nom exact du partage peuvent y accéder.
  • Déploiement du script
    Le script a été placé dans le partage SYSVOL, puis déployé via une stratégie de groupe (GPO). Il s’exécutera au prochain démarrage de l’ordinateur, effectuera un inventaire de la machine et de l’état de sa licence, et activera Windows si nécessaire.

Défis rencontrés :

  • Lorsque j’ai commencé mon stage, je n’avais aucune connaissance préalable de la méthode de provisionnement des licences KMS. 
  • Mes connaissances en PowerShell se limitaient aux bases, j’ai dû explorer la notion d’objet et développer des scripts complexes, incluant par exemple l’écriture dans des colonnes spécifique d’un fichier CSV. 

Résultats obtenus

  • Un inventaire du parc a pu être établi avec des informations détaillé sur chaque poste. La mise à niveau de la licence de tous les postes qui n’en avaient pas a pu être effectuée rapidement.