DIDOES ITEndpoint Engineering← Tous les articles

Endpoint Note / Endpoint Notes

Endpoint Note : retrouver et vérifier un certificat sous Windows

Quand une application ne trouve pas son certificat, je vérifie d’abord le bon magasin et le bon contexte. LocalMachine et CurrentUser ne sont pas interchangeables.

À propos des exemples

Les scripts illustrent les contrôles ou les corrections décrits dans l’article. Ils ne constituent pas des outils prêts à déployer. Avant toute utilisation, vérifiez les chemins, les permissions et la cible, puis testez le comportement et le retour arrière sur un environnement représentatif.

01

Le repère en bref

J’ouvre certlm.msc pour les certificats ordinateur et certmgr.msc pour ceux de l’utilisateur connecté.

Dans PowerShell, Cert:\LocalMachine\My et Cert:\CurrentUser\My permettent une lecture structurée. Je cherche une clé privée, le bon EKU, une période valide et une chaîne approuvée.

Je ne supprime jamais un certificat pour tester : il peut protéger Wi-Fi, VPN, chiffrement ou authentification.

J’ouvre certlm.msc pour les certificats ordinateur et certmgr.msc pour ceux de l’utilisateur connecté.
02

Quand l’utiliser

Ce repère sert quand un profil Intune est annoncé comme réussi mais que l’application ne propose aucun certificat, ou quand je dois comparer un certificat utilisateur et appareil.

« Magasins de certificats Windows » rassemble le repère utile, la commande adaptée, la lecture du résultat et ses limites.

Cette note ne remplace pas une procédure de changement. Toute action qui modifie le poste exige une validation adaptée au contexte.

  • Windows 10/11
  • contrôle local en lecture seule
03

Commande ou manipulation

HasPrivateKey doit être True pour une authentification cliente. Je contrôle ensuite NotBefore/NotAfter et Client Authentication dans EnhancedKeyUsageList.

Pour la chaîne, j’ouvre le certificat et consulte Certification Path, ou j’emploie certutil sur un export public .cer. Je n’exporte pas la clé privée.

POWERSHELLInventaire rapide — lecture seule
# Exemple de collecte en lecture seule — à adapter avant utilisation
$ErrorActionPreference = 'Stop'
try {
  Get-ChildItem Cert:\LocalMachine\My,Cert:\CurrentUser\My |
    Select-Object PSParentPath,Subject,Issuer,Thumbprint,NotAfter,HasPrivateKey,EnhancedKeyUsageList
} catch { Write-Error "Lecture impossible : $($_.Exception.Message)"; exit 1 }

Ajouter certutil.exe -store My pour une seconde lecture du magasin machine et certutil.exe -user -store My pour l’utilisateur.

04

Lire le résultat et connaître les limites

  • le certificat est dans le magasin attendu
  • la clé privée est présente
  • la date, l’EKU et la chaîne correspondent au service
  • une EKU vide peut autoriser plusieurs usages selon le contexte
  • une empreinte est un identifiant, pas une preuve de confiance
  • toute suppression exige un runbook séparé
MATRICELecture rapide
ConstatInterprétation
Absent du magasin attenduCiblage ou contexte incorrect
HasPrivateKey = FalseIdentité cliente inutilisable
NotAfter dépasséCertificat expiré
EKU absentUsage à confirmer avant conclusion
R

Repères d’utilisation

Avant toute application à grande échelle, vérifiez les versions, les licences et les comportements sur un environnement pilote représentatif. Les résultats locaux ne constituent pas à eux seuls une validation pour la production.

Références techniques publiques

J’ai privilégié la documentation Microsoft pour les comportements contractuels. Les retours terrain complètent l’observation, sans remplacer la documentation de support.

WindowsCertificatescertutilPowerShellPKI

Continuer la lecture

Modern Workplace LabOMA-DM et WinDC en double inscriptionEndpoint LabDiagnostic complet des applications Win32