Un certificat dans la chaîne pour le certificat d'autorité de certification a expiré.
La validation de chaîne ou de chemin est le processus grâce auquel des certificats d'entité de fin (utilisateur ou ordinateur) et tous les certificats de l'autorité de certification sont traités de manière hiérarchique jusqu'à ce que la chaîne de certificat se termine sous la forme d'un certificat approuvé Il s'agit généralement d'un certificat d'autorité de certification racine. Le démarrage des services de certificats Active Directory (AD CS) peut échouer s'il y a des problèmes de disponibilité, de validité et de validation de chaîne pour le certificat d'autorité de certification.
Émettre à nouveau des certificats dans la chaîne pour un certificat d'autorité de certification ayant expiré
Le certificat d'autorité de certification ayant expiré sera identifié dans le journal des événements. Pour résoudre ce problème :
Vérifiez si le certificat a expiré.
Confirmez la chaîne de certificats.
Si le problème persiste, activez les diagnostics CryptoAPI 2.0, corrigez les erreurs trouvée, puis émettez à nouveau et réinstallez les certificats ayant expiré.
Pour effectuer ces procédures, vous devez avoir une autorisation de Gérer l'autorité de certification ou l’autorité appropriée doit vous avoir été déléguée.
Vérifier l'expiration d'un certificat d'autorité de certification
Pour vérifier si un certificat d'autorité de certification spécifique a expiré :
Sur l'ordinateur hébergeant l'autorité de certification, cliquez sur Démarrer, pointez sur Outils d'administration et cliquez sur Autorité de certification.
Cliquez avec le bouton droit sur le nœud de l'autorité de certification et cliquez sur Propriétés.
Les certificats ayant expiré seront répertoriés avec le mot (expiré) dans la liste des certificats d'autorité de certification. Si tous les certificats d'autorité de certification ont expiré, vous devrez renouveler le certificat d'autorité de certification et émettre à nouveau tous les certificats situés sous le certificat d'autorité de certification ayant expiré.
Pour renouveler le certificat d'autorité de certification, cliquez avec le bouton droit sur le nœud de l'autorité de certification, pointez sur Toutes les tâches et cliquez sur Renouveler le certificat d'autorité de certification.
Après que le certificat d'autorité de certification a été renouvelé, redémarrez l'autorité de certification.
Si la liste contient des certificats n'ayant pas expiré, trouvez le certificat dont le numéro de version d'autorité de certification correspond à l'ID de clé du message d'erreur. Par exemple, si l'ID de clé est 2, le certificat avec la version d'autorité de certification 2.1 ou 2.2 est le certificat correct.
Si ce certificat n'a pas expiré, vérifiez s'il existe des problèmes dans la chaîne de certificats. Exportez le certificat dans un fichier, puis ouvrez une fenêtre d’invite de commandes. Tapez certutil -urlfetch -verify<CAcert.cer> puis appuyez sur ENTRÉE. (Remplacez CAcert.cer par le nom du fichier de certificat d'autorité de certification.)
Activer des diagnostics CryptoAPI 2.0
Pour activer des diagnostics CryptoAPI 2.0 :
Sur l'ordinateur hébergeant l'autorité de certification, cliquez sur Démarrer, pointez sur Outils d'administration, puis sur Observateur d'événements.
Dans l'arborescence, développez l'observateur d'événements, les journaux des applications et des services, Microsoft, Windows et CAPI2.
Cliquez avec le bouton droit Opérationnel et cliquez sur Activer le journal.
Cliquez sur Démarrer, pointez sur Outils d'administration et cliquez sur Services.
Cliquez avec le bouton droit sur Services de certificats Active Directory et cliquez sur Redémarrer.
Pour confirmer que le certificat et la chaîne de l'autorité de certification sont valides :
Sur l'ordinateur hébergeant l'autorité de certification, cliquez sur Démarrer, entrez mmc, puis appuyez sur ENTRÉE.
Si la boîte de dialogue Contrôle de compte d’utilisateur s’ouvre, vérifiez que l’action affichée correspond à ce que vous voulez, puis cliquez sur Continuer.
Dans le menu Fichier, cliquez sur Ajouter/Supprimer un composant logiciel enfichable, sur Certificats, puis sur Ajouter.
Cliquez sur Compte d'ordinateur, puis sur Suivant.
Cliquez sur Terminer, puis sur OK.
Dans l'arborescence de la console, cliquez sur Certificats (Ordinateur local), puis sur Personnel.
Confirmer qu'un certificat d'autorité de certification n'ayant pas expiré existe dans ce magasin.
Cliquez avec le bouton droit sur ce certificat et sélectionnez Exporter pour lancer l'Assistant exportation de certificat.
Exporter le certificat vers un fichier nommé Cert.cer.
Saisissez Démarrer, cmd et appuyez sur ENTRÉE.
Tapez certutil -urlfetch -verify <cert.cer>, puis appuyez sur ENTRÉE.
Si aucune erreur de validation, de génération de chaîne ou de vérification de révocation n'est signalée, la chaîne est valide.
Target | Microsoft.Windows.CertificateServices.CARole.2016 | ||
Category | EventCollection | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | High | ||
Remotable | True | ||
Alert Message |
| ||
Event Log | Application |
ID | Module Type | TypeId | RunAs |
---|---|---|---|
DS | DataSource | Microsoft.Windows.EventProvider | Default |
Alert | WriteAction | System.Health.GenerateAlert | Default |
WriteToCertSvcEvents | WriteAction | Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher | Default |
WriteToDB | WriteAction | Microsoft.SystemCenter.CollectEvent | Default |
<Rule ID="Microsoft.Windows.CertificateServices.CARole.2016.CertSvcEvents.58_Error" Enabled="true" Target="CSDisc!Microsoft.Windows.CertificateServices.CARole.2016" ConfirmDelivery="true" Remotable="true" Priority="Normal" DiscardLevel="100">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="DS" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-CertificationAuthority</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">58</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="Integer">EventLevel</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="Integer">1</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="WriteToDB" TypeID="SC!Microsoft.SystemCenter.CollectEvent"/>
<WriteAction ID="WriteToCertSvcEvents" TypeID="Microsoft.Windows.CertificateServices.CARole.CertSvcEvents.Publisher"/>
<WriteAction ID="Alert" TypeID="Health!System.Health.GenerateAlert">
<Priority>2</Priority>
<Severity>2</Severity>
<AlertMessageId>$MPElement[Name="AlertMessageIDa56c8730d300410882edc1f355f85f5d"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>