Détection Automatisée Powershell Et Baseline Sccm Mecm

Détection automatisée de logiciels avec PowerShell et baseline SCCM/MECM

Auteur : Rian Gruny, Administrateur Modern Workplace
Rian Gruny Administrateur Modern Workplace
7 mins
19 juin 2025
Dans cet article :
  1. Détection d’un logiciel spécifique via une baseline MECM/SCCM
  2. Créer un script PowerShell de détection
  3. Configurer un élément de configuration (CI)
  4. Créer une baseline
  5. Déployer une baseline
  6. Créer des collections dynamiques basées sur la conformité
  7. Annexe 1 : valeurs de ComplianceState
  8. Annexe 2 : suivi du déploiement dans MECM

Cet article a pour objectif de fournir une méthode fiable pour détecter la présence d’une application dont le déploiement a été interrompu ou avorté au sein d’une infrastructure SCCM/MECM.

Dans les environnements de production, il arrive fréquemment qu’un déploiement doive être stoppé en urgence, notamment pour des raisons de sécurité (faille critique, incompatibilité, erreur de version, etc.). Or, les métriques de remontée de conformité dans SCCM peuvent présenter un délai non négligeable, rendant difficile une réaction rapide et ciblée.

Détection d’un logiciel spécifique via une baseline MECM/SCCM

Ce guide propose une solution proactive, basée sur une baseline de conformité personnalisée, permettant de :

  • Identifier rapidement les machines ayant reçu l’application ciblée
  • Classer dynamiquement les postes selon leur état de conformité 
  • Faciliter la désinstallation ciblée et rapide de l’application concernée

Dans cet article, nous vous guidons pas à pas pour créer une baseline dans MECM/SCCM permettant de détecter la présence d’un logiciel spécifique (nommé ici "test") sur les postes clients. Vous apprendrez à :

  • Créer un script PowerShell de détection
  • Configurer un élément de configuration (Configuration Item)
  • Créer une baseline
  • Déployer la baseline
  • Créer des collections dynamiques basées sur la conformité
  • Utiliser des requêtes WQL pour filtrer les machines
SCCM vs Intune : que choisir ?

Créer un script PowerShell de détection

Ce script vérifie si un logiciel nommé "test" est présent parmi les programmes installés, en inspectant les chemins de registre classiques de Windows (clés ARP 64 bits et 32 bits). Il retourne :

  • 1 si le logiciel est trouvé
  • 0 sinon 
Script Powershell De Détection Sccm Mecm

Configurer un élément de configuration (CI)

Explication : cette étape permet de définir la règle de détection du logiciel. Le CI sert de base à l’évaluation de conformité sur les postes clients via un script personnalisé.

  1. Ouvrir la console Configuration Manager.
  2. Aller dans Assets and Compliance > Compliance Settings > Configuration Items.
  3. Cliquer sur Create Configuration Item.
  4. Nommer l’élément : CI - Présence logiciel test.
  5. Cochez Windows Desktops and Servers (custom) ou soit que les desktops ou que les serveurs en fonction des besoins.
  6. Dans l’onglet Settings, cliquez sur New :
    • Name : Détection logiciel test
    • Setting type : Script
    • Data type : Integer
    • Ajouter le script PowerShell ci-dessus.
  7. Dans l’onglet Compliance Rules, cliquez sur New : 
    • Rule type : Value 
    • Equals → 1 
    • Cochez Report noncompliance if this setting is not met

Créer une baseline

Explication : la baseline regroupe un ou plusieurs éléments de configuration (CI) pour en automatiser l’évaluation sur les postes clients. Elle permet de centraliser la vérification de conformité et de la déployer à grande échelle.

  1. Aller dans Configuration Baselines.
  2. Cliquer sur Create Configuration Baseline.
  3. Nom : Baseline - Vérification logiciel test. (⚠ nommage important, il sera réutilisé en WQL)
  4. Ajouter l’élément de configuration créé précédemment.

Déployer une baseline

Explication : le déploiement permet d’appliquer la baseline à une ou plusieurs collections de machines. C’est ce qui déclenche l’évaluation automatique de la conformité sur les postes ciblés.

  1. Clic droit sur la baseline > Deploy.
  2. Sélectionner une collection cible (ex. : All Workstations).
  3. Définir une planification (ex. : tous les jours).
  4. (Optionnel) Cochez Remediate noncompliant rules when supported. Si un script de REM est déjà présent dans le CI (inutile dans notre cas).

Créer des collections dynamiques basées sur la conformité

Explication : les collections dynamiques permettent de regrouper automatiquement les machines selon leur état de conformité. Elles facilitent le ciblage des actions à mener, comme la désinstallation ou le redéploiement.

Machines avec le logiciel (compliant) :

Mecm Machines Avc Logiciel Compliant

Machines sans le logiciel (non-compliant) :

Mecm Machines Sans Logiciel Non Compliant

Annexe 1 : valeurs de ComplianceState

Dans MECM, la valeur de ComplianceState correspond à :

  • 0 → Unknown (jamais évalué ou état inconnu)
  • 1 → Compliant (conforme)
  • 2 → Non-compliant (non conforme)

Donc pour détecter les machines sans le logiciel, on utilise bien ComplianceState = 2.

Annexe 2 : suivi du déploiement dans MECM

Pour surveiller l’état de déploiement d’une baseline dans MECM :

  • Accède à Monitoring > Overview > Deployments
  • Recherche le nom de la baseline
  • Clic droit > View Status

La vue se divise en 4 onglets :

  • Compliant : logiciel détecté
  • Non-Compliant : logiciel absent
  • Error : erreur d’exécution
  • Unknown : état non évalué

Chaque onglet affiche un tableau détaillé par machine, utile pour cibler les actions correctives.

Articles similaires

Digital Workplace

DaaS : que choisir entre Windows 365 et Azure Virtual Desktop ?

Avec l’essor du télétravail, des environnements hybrides et des exigences de sécurité toujours plus fortes, les entreprises se tournent de...

Digital Workplace

Faut-il passer à Windows 11 ?​

Fin de support Windows 10 Dès octobre 2025, Windows 10 ne recevra plus de mises à jour de sécurité. Pour...

Digital Workplace

Comment gérer la conformité des appareils Apple avec Jamf Pro et Intune ?

Contexte : une évolution des règles entre Jamf Pro et Intune Depuis près d’un an, les règles encadrant la gestion...