Le service Windows AD FS n'a pas pu démarrer car le compte de service AD FS ne peut pas accéder à la clé privée pour le certificat de signature de jeton ou de déchiffrement de jeton de la base de données de configuration AD FS.
Si le service AD FS est démarré correctement, le système de surveillance passera à l'état vert et l'alerte critique d'origine sera résolue automatiquement.
Cette condition peut survenir lorsque le certificat est trouvé dans le magasin spécifié, mais qu'il existe un problème d'accès à la clé privée du certificat. Les causes courantes de cette condition sont les suivantes :
Le certificat a été installé depuis une source qui ne comprend pas la clé privée, comme un fichier .cer ou .p7b.
La clé privée du certificat a été importée (depuis un fichier .pfx par exemple) dans un magasin qui est différent de celui indiqué dans cet événement.
Le certificat a été généré dans le cadre d'une demande de certificat pour laquelle l'option « Clé machine » n'était pas spécifiée.
L'identité du service de fédération n'a pas reçu l'autorisation de lecture pour la clé privée du certificat.
Les résolutions possibles de cette condition sont les suivantes :
Si le certificat a été importé depuis une source ne possédant pas de clé privée, sélectionnez un certificat ayant une clé privée ou importez à nouveau le certificat depuis une source qui comprend la clé privée (un fichier .pfx par exemple).
Si le certificat a été importé dans un contexte utilisateur, vérifiez que le magasin qui a été spécifié plus tôt correspond au magasin dans lequel le certificat a été importé.
Si le certificat a été généré par une demande de certificat pour laquelle l'option « Clé machine » n'était pas spécifiée et que la clé est marquée comme étant exportable, exportez le certificat avec une clé privée à partir du magasin de l'utilisateur vers un fichier .pfx, puis importez-le à nouveau directement dans le magasin spécifié dans le fichier de configuration.
Si la clé n'est pas marquée comme étant exportable, demandez un nouveau certificat en utilisant l'option « Clé machine ».
Si l'identité du service de fédération ne dispose pas de l'autorisation de lecture pour la clé privée du certificat, corrigez cette condition en utilisant le Composant logiciel enfichable Certificats. Pour plus d'informations, consultez la procédure « Confirmer que les clés privées pour les certificats sont accessibles pour le compte d'utilisateur du service AD FS » dans la section « Points à vérifier avant de dépanner AD FS » dans le Guide de dépannage d'AD FS.
Target | Microsoft.ActiveDirectoryFederationServices.2016.FederationServer | ||
Parent Monitor | System.Health.AvailabilityState | ||
Category | AvailabilityHealth | ||
Enabled | True | ||
Alert Generate | True | ||
Alert Severity | Error | ||
Alert Priority | Normal | ||
Alert Auto Resolve | True | ||
Monitor Type | Microsoft.Windows.2SingleEventLog2StateMonitorType | ||
Remotable | True | ||
Accessibility | Public | ||
Alert Message |
| ||
RunAs | Default |
<UnitMonitor ID="Microsoft.ActiveDirectoryFederationServices.2016.FederationServerBadConfigurationIdentityCertificateHasNoPrivateKeyMonitor" Accessibility="Public" Enabled="true" Target="Microsoft.ActiveDirectoryFederationServices.2016.FederationServer" ParentMonitorID="Health!System.Health.AvailabilityState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="true">
<Category>AvailabilityHealth</Category>
<AlertSettings AlertMessage="Microsoft.ActiveDirectoryFederationServices.2016.FederationServerBadConfigurationIdentityCertificateHasNoPrivateKeyMonitor_AlertMessageResourceID">
<AlertOnState>Error</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>Error</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="FirstEventRaised" MonitorTypeStateID="FirstEventRaised" HealthState="Error"/>
<OperationalState ID="SecondEventRaised" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>$Target/Property[Type="Microsoft.ActiveDirectoryFederationServices.2016.FederationServer"]/ADFSEventLog$</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">133</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>(^AD FS$)</Pattern>
</RegExExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>$Target/Property[Type="Microsoft.ActiveDirectoryFederationServices.2016.FederationServer"]/ADFSEventLog$</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">100</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<RegExExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>MatchesMOM2005RegularExpression</Operator>
<Pattern>(^AD FS$)</Pattern>
</RegExExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>