Get-ADComputer : maîtriser la gestion des ordinateurs Active Directory

19 juin 2026
ECRIT PAR L'équipe VirtuozIA

L’essentiel à retenir : Get-ADComputer centralise l’audit des ordinateurs dans Active Directory. Filtrage avancé par OS, groupe ou OU pour identifier les comptes obsolètes. Export automatisé vers CSV pour le reporting. Combinaison avec d’autres cmdlets pour l’administration complète. Sécurisation du parc informatique via la détection des systèmes inactifs.

Get-ADComputer : maîtriser la gestion des ordinateurs Active Directory

Vous gérez un parc de 200 ordinateurs et vous découvrez que 30 % des comptes Active Directory correspondent à des machines inexistantes ? Cette situation, courante dans les entreprises, compromet la sécurité et complique l’audit. Get-ADComputer résout ce problème en offrant une visibilité complète sur votre infrastructure.

Ce cmdlet PowerShell devient indispensable pour auditer, filtrer et maintenir la propreté de votre annuaire Active Directory. Voici comment l’exploiter pour sécuriser efficacement votre environnement réseau.

  1. Fonctionnement et syntaxe de base
  2. Filtrage avancé par critères métier
  3. Automatisation et reporting centralisé
  4. Sécurisation et audit du parc informatique
  5. Optimisation des performances et bonnes pratiques

Fonctionnement et syntaxe de base

Get-ADComputer interroge l’annuaire Active Directory pour extraire les informations des objets ordinateurs. Contrairement aux outils graphiques, ce cmdlet offre une précision chirurgicale et une capacité d’automatisation.

La syntaxe de base s’articule autour du paramètre Identity pour cibler un ordinateur spécifique, ou Filter pour effectuer des recherches étendues. Le paramètre Properties détermine les attributs récupérés, optimisant ainsi les performances réseau.

Paramètres essentiels

-Identity : nom exact de l’ordinateur. -Filter : critères de recherche LDAP. -Properties : attributs à récupérer (par défaut : nom, DN, GUID). -SearchBase : OU spécifique à scanner.

Pour récupérer un ordinateur précis, la commande `Get-ADComputer « PC-COMPTA-01″` suffit. Elle retourne les propriétés de base : nom, chemin d’accès distingué et identifiant unique. Cette approche directe convient pour les vérifications ponctuelles.

L’ajout du paramètre Properties enrichit considérablement les informations. `Get-ADComputer « PC-COMPTA-01 » -Properties OperatingSystem, LastLogonDate, IPv4Address` révèle l’OS, la dernière connexion et l’adresse IP. Ces données orientent les décisions de maintenance.

Le filtrage étendu transforme l’usage du cmdlet. `Get-ADComputer -Filter « Name -like ‘PC-COMPTA*' »` liste tous les ordinateurs dont le nom commence par « PC-COMPTA ». Cette flexibilité accélère l’inventaire par service ou type de poste.

Structure des objets retournés

Chaque objet ordinateur contient des propriétés standard et étendues. Les propriétés standard incluent Name, DNSHostName, SamAccountName et Enabled. Les propriétés étendues nécessitent une demande explicite via le paramètre Properties.

L’attribut DistinguishedName révèle l’emplacement exact dans l’arborescence Active Directory. Cette information devient cruciale pour comprendre l’organisation logique et identifier les ordinateurs mal placés.

L’attribut ObjectGUID fournit un identifiant unique immuable. Contrairement au nom qui peut changer, ce GUID reste stable même après un renommage, garantissant la traçabilité dans les scripts d’automatisation.

Gestion des erreurs courantes

L’erreur « Cannot find an object with identity » survient quand l’ordinateur spécifié n’existe pas dans l’annuaire. Cette situation indique souvent un ordinateur supprimé physiquement mais non nettoyé dans AD.

Les permissions insuffisantes génèrent une erreur « Access is denied ». L’utilisateur exécutant le cmdlet doit disposer au minimum des droits de lecture sur les objets ordinateurs dans l’OU concernée.

Point de vigilance

Méfiez-vous des timeouts sur les domaines étendus. Le paramètre -ResultSetSize limite le nombre de résultats pour éviter la saturation réseau.

Filtrage avancé par critères métier

Après avoir maîtrisé la syntaxe de base, explorons les techniques de filtrage qui transforment Get-ADComputer en outil d’audit puissant. Le filtrage métier répond aux besoins opérationnels concrets.

Le filtrage par système d’exploitation révèle la diversité du parc informatique. `Get-ADComputer -Filter « OperatingSystem -like ‘*Windows 10*' » -Properties OperatingSystem` identifie tous les postes Windows 10. Cette requête guide les plans de migration et les mises à jour de sécurité.

Critère Syntaxe du filtre Cas d’usage
OS spécifique OperatingSystem -like « *Windows 11* » Inventaire par version
Dernière connexion LastLogonDate -lt « 2026-01-01 » Détection comptes inactifs
Ordinateurs activés Enabled -eq $true Audit des comptes fonctionnels
Localisation OU -SearchBase « OU=Bureaux,DC=contoso,DC=com » Filtrage géographique

La détection des ordinateurs inactifs protège contre les vulnérabilités. `Get-ADComputer -Filter « LastLogonDate -lt (Get-Date).AddDays(-90) » -Properties LastLogonDate` liste les machines non connectées depuis 90 jours. Ces comptes candidats à la suppression réduisent la surface d’attaque.

Le filtrage géographique via SearchBase concentre l’analyse sur des unités organisationnelles spécifiques. Cette approche accélère les audits par site ou service, évitant le balayage complet de l’annuaire.

Combinaison de critères complexes

Les filtres composés offrent une précision maximale. `Get-ADComputer -Filter « OperatingSystem -like ‘*Server*’ -and Enabled -eq $true »` identifie uniquement les serveurs actifs. Cette granularité oriente les actions de maintenance vers les systèmes critiques.

L’opérateur -not inverse la logique de filtrage. `Get-ADComputer -Filter « OperatingSystem -notlike ‘*Windows*' »` révèle les systèmes non-Windows intégrés à l’annuaire, comme certains équipements réseau compatibles AD.

Règle d’or

Testez vos filtres sur un échantillon restreint avant l’exécution massive. Utilisez -ResultSetSize 10 pour valider la logique.

Les expressions régulières dans les filtres apportent une flexibilité supplémentaire. Bien que Get-ADComputer ne supporte pas nativement les regex, la combinaison avec Where-Object comble cette lacune : `Get-ADComputer -Filter * | Where-Object {$_.Name -match « ^PC-[A-Z]{3}-\d{2}$ »}`.

Performance et optimisation des requêtes

Le paramètre ResultSetSize limite le nombre d’objets retournés, prévenant les blocages réseau. Une valeur de 1000 convient pour la plupart des audits sans compromettre les performances.

L’attribut Properties influence directement la vitesse d’exécution. Demander uniquement les propriétés nécessaires accélère significativement les requêtes sur les grands domaines. `Get-ADComputer -Filter * -Properties Name, LastLogonDate` est plus rapide que `Get-ADComputer -Filter * -Properties *`.

Les requêtes indexées sur Name, SamAccountName ou ObjectGUID s’exécutent plus rapidement que celles portant sur des attributs non-indexés comme Description.

Automatisation et reporting centralisé

La transformation de requêtes ponctuelles en processus automatisés amplifie l’utilité de Get-ADComputer. L’automatisation garantit la cohérence et libère du temps pour les tâches à valeur ajoutée.

L’export CSV centralise les données pour l’analyse métier. `Get-ADComputer -Filter * -Properties Name, OperatingSystem, LastLogonDate | Export-CSV « C:\Audit\Ordinateurs-$(Get-Date -Format ‘yyyy-MM-dd’).csv » -NoTypeInformation` génère un rapport horodaté exploitable dans Excel.

Export simple

Format CSV standard avec toutes les propriétés demandées. Idéal pour l’archivage et l’analyse statistique.

Export formaté

Sélection de colonnes spécifiques avec Select-Object. Optimise la lisibilité pour les équipes métier.

Les tâches planifiées Windows transforment Get-ADComputer en système de surveillance continue. Un script exécuté quotidiennement peut alerter sur l’apparition de nouveaux ordinateurs ou la déconnexion prolongée de systèmes critiques.

Le formatage conditionnel enrichit les rapports. `Get-ADComputer -Filter * -Properties LastLogonDate | Select-Object Name, @{Name=’Status’; Expression={if($_.LastLogonDate -lt (Get-Date).AddDays(-30)){‘Inactif’}else{‘Actif’}}}` ajoute une colonne de statut calculée.

Intégration avec d’autres cmdlets

La puissance de Get-ADComputer se multiplie via sa combinaison avec d’autres cmdlets Active Directory. `Get-ADComputer -Filter * | Get-ADUser -Filter « SamAccountName -eq $_.Name »` tente de correlér ordinateurs et utilisateurs homonymes.

L’association avec Get-ADGroupMember révèle l’appartenance aux groupes de sécurité. Cette information guide la compréhension des droits accordés aux postes de travail.

Selon le baromètre Microsoft 2026, 67 % des organisations utilisent PowerShell pour l’automatisation AD, réduisant de 40 % le temps consacré aux audits manuels.

La combinaison avec Invoke-Command permet l’exécution de commandes à distance sur les ordinateurs listés. `Get-ADComputer -Filter « OperatingSystem -like ‘*Windows 10*' » | Invoke-Command -ScriptBlock {Get-WmiObject -Class Win32_LogicalDisk}` audite l’espace disque sur tous les postes Windows 10.

Gestion des erreurs en production

Les scripts de production intègrent une gestion d’erreur robuste. Try-Catch encapsule les appels à Get-ADComputer pour capturer les exceptions réseau ou de permissions.

La journalisation des opérations facilite le débogage. `Add-Content « C:\Logs\Audit-AD.log » « $(Get-Date): Début audit ordinateurs »` trace l’exécution pour l’analyse ultérieure.

Point de vigilance

Méfiez-vous des boucles infinies sur les gros domaines. Implémentez un timeout et une limitation du nombre d’itérations.

Sécurisation et audit du parc informatique

Maintenant que l’automatisation est maîtrisée, concentrons-nous sur l’utilisation sécuritaire de Get-ADComputer pour protéger l’infrastructure. L’audit sécuritaire détecte les anomalies avant qu’elles ne deviennent critiques.

La détection d’ordinateurs fantômes révèle les vulnérabilités cachées. Ces comptes correspondent souvent à des machines physiquement supprimées mais maintenues dans AD. `Get-ADComputer -Filter « LastLogonDate -lt (Get-Date).AddDays(-180) » -Properties LastLogonDate | Where-Object {$_.LastLogonDate -ne $null}` identifie les candidats à la suppression.

L’analyse des droits d’ordinateur prévient les escalades de privilèges. Certains comptes machines disposent de droits excessifs, créant des vecteurs d’attaque. Get-ADComputer combiné à Get-ADPermission révèle ces configurations dangereuses.

  • Ordinateurs avec droits d’administration sur d’autres systèmes
  • Comptes machines dans des groupes privilégiés inappropriés
  • Ordinateurs avec délégation Kerberos non contrôlée
  • Systèmes obsolètes sans correctifs de sécurité récents

La surveillance des nouveaux ordinateurs détecte les intrusions potentielles. Un script quotidien comparant l’état actuel avec un référentiel alerte sur l’apparition d’ordinateurs non autorisés.

Audit de conformité réglementaire

Les référentiels de sécurité imposent des exigences précises sur la gestion des comptes ordinateurs. ISO 27001 recommande la revue trimestrielle des comptes inactifs et leur suppression après validation métier.

Le RGPD impacte indirectement la gestion des ordinateurs via la traçabilité des accès aux données personnelles. Get-ADComputer aide à identifier les postes ayant accédé à des ressources sensibles via l’analyse des logs d’authentification.

Checklist conformité

Inventaire exhaustif : tous ordinateurs répertoriés avec OS et version. Comptes inactifs : détection et documentation des machines non connectées > 90 jours. Droits minimaux : vérification que chaque ordinateur dispose uniquement des autorisations nécessaires.

La documentation des exceptions justifie les écarts aux règles standard. Certains ordinateurs industriels ou serveurs de sauvegrade nécessitent des configurations particulières, documentées via les attributs Description ou extensionAttribute.

Corrélation avec les événements de sécurité

L’intégration de Get-ADComputer avec les SIEM enrichit l’analyse comportementale. Les tentatives de connexion depuis des ordinateurs inexistants dans AD signalent des attaques potentielles.

La corrélation temporelle entre création de compte ordinateur et événements suspect guide l’investigation forensique. Un ordinateur créé à 3h du matin par un administrateur en congé mérite attention.

Les patterns d’activité révèlent les comportements anormaux. Un ordinateur de bureau se connectant la nuit ou un serveur avec des connexions interactives fréquentes sortent des usages normaux.

Optimisation des performances et bonnes pratiques

Pour conclure efficacement, examinons les techniques avancées qui transforment Get-ADComputer en outil haute performance. L’optimisation devient critique sur les grandes infrastructures.

Le paramèrage fin des requêtes influence drastiquement les performances. `-Server` force l’utilisation d’un contrôleur de domaine spécifique, évitant la latence de résolution automatique. Cette approche s’avère cruciale pour les scripts exécutés depuis des sites distants.

La pagination automatique via `-ResultPageSize` améliore la réactivité. La valeur par défaut de 256 objets par page convient aux réseaux rapides, mais 100 optimise les liaisons lentes. Cette granularité évite les timeouts sur les requêtes massives.

Règle d’or

Mesurez avant d’optimiser. Utilisez Measure-Command pour quantifier l’impact réel des modifications de paramètres sur vos requêtes.

L’utilisation judicieuse des index Active Directory accélère considérablement les recherches. Les attributs Name, SamAccountName, ObjectGUID et DistinguishedName bénéficient d’index natifs. Construire les filtres sur ces propriétés garantit des performances optimales.

Architecture pour grandes infrastructures

Les domaines multi-sites nécessitent une approche distribuée. L’exécution parallèle sur plusieurs contrôleurs via Invoke-Command réduit le temps global d’audit. Cette technique divise la charge et exploite la réplication AD.

Le cache local optimise les requêtes répétitives. Stocker temporairement les résultats Get-ADComputer dans une hashtable accélère les consultations ultérieures dans le même script.

La compression des exports volumineux économise l’espace disque et accélère les transferts. `Get-ADComputer -Filter * | Export-Csv | Compress-Archive` combine efficacité et économie de ressources.

Surveillance et métriques de performance

L’instrumentation des scripts révèle les goulots d’étranglement. Mesurer séparément le temps de requête AD, de traitement local et d’export identifie les axes d’amélioration prioritaires.

Les compteurs de performance Windows exposent l’impact des requêtes LDAP sur les contrôleurs de domaine. Cette surveillance prévient la surcharge des serveurs d’annuaire lors d’audits massifs.

  • Temps moyen de réponse LDAP par requête
  • Nombre d’objets traités par seconde
  • Taille mémoire des résultats intermédiaires
  • Débit réseau consommé pendant l’audit

FAQ

Peut-on utiliser Get-ADComputer sans droits d’administrateur de domaine ?

Oui, les droits de lecture sur les objets ordinateurs suffisent. L’appartenance au groupe « Account Operators » ou une délégation spécifique sur l’OU concernée permet l’exécution. Les administrateurs locaux ne disposent pas automatiquement de ces droits.

Comment identifier les ordinateurs avec un OS obsolète ?

Filtrez sur l’attribut OperatingSystem avec des versions spécifiques : `Get-ADComputer -Filter « OperatingSystem -like ‘*Windows 7*’ -or OperatingSystem -like ‘*Windows XP*' » -Properties OperatingSystem`. Cette requête révèle les systèmes nécessitant une migration urgente.

Quelle est la différence entre LastLogonDate et LastLogon ?

LastLogonDate se réplique entre contrôleurs de domaine mais s’actualise avec un délai de 14 jours maximum. LastLogon reste local à chaque contrôleur et s’actualise immédiatement. Pour la précision absolue, interrogez tous les contrôleurs.

Comment automatiser la suppression des comptes inactifs ?

Ne jamais automatiser complètement la suppression. Générez d’abord un rapport avec `Get-ADComputer -Filter « LastLogonDate -lt (Get-Date).AddDays(-180) »`, validez manuellement, puis utilisez Remove-ADComputer après approbation métier. La prudence prévient la perte de données critiques.

Get-ADComputer transforme l’administration Active Directory en processus maîtrisé et sécurisé. La combinaison filtrage précis, automatisation intelligente et audit continu garantit un parc informatique propre et conforme. L’investissement dans les scripts réutilisables se rentabilise dès les premiers audits.

Commencez par auditer vos ordinateurs inactifs dès aujourd’hui pour identifier les vulnérabilités cachées de votre infrastructure.

Laisser un commentaire