Službu AD FS systému Windows se nepodařilo spustit, protože účet služby AD FS nemá přístup k privátnímu klíči pro podpisový nebo dešifrovací certifikát tokenu, který se nachází v konfigurační databázi služby AD FS.
Pokud je služba AD FS systému Windows úspěšně spuštěna, monitor přejde do zeleného stavu a původní kritická výstraha bude automaticky vyřešena.
Tento stav může nastat, pokud je certifikát ve specifikovaném úložišti nalezen, ale došlo k problému s přístupem k privátnímu klíči certifikátu. Níže jsou uvedeny obvyklé příčiny pro tento stav:
Certifikát byl nainstalován ze zdroje, který neobsahoval privátní klíč, např. ze souboru .cer nebo .p7b.
Privátní klíč certifikátu (např. ze souboru .pfx) byl naimportován do jiného úložiště, než které je specifikované v této události.
Certifikát byl vygenerován jako součást žádosti o certifikát, která nespecifikovala možnost "Klíč počítače".
Identitě služby Federation Service nebylo uděleno oprávnění přístupu čtení k privátnímu klíči certifikátu.
Níže jsou uvedena možná řešení pro tento stav:
Pokud byl certifikát naimportován ze zdroje, který neobsahuje privátní klíč, vyberte certifikát, který má privátní klíč, nebo naimportujte certifikát znovu ze zdroje, který obsahuje privátní klíč (např. ze souboru .pfx).
Pokud byl certifikát naimportován v kontextu uživatele, ověřte, že dříve specifikované úložiště se shoduje s úložištěm, do kterého byl certifikát naimportován.
Pokud byl certifikát vygenerován žádostí o certifikát, která nespecifikovala možnost "Klíč počítače", a klíč je označený jako exportovatelný, vyexportujte certifikát s privátním klíčem z úložiště uživatele do souboru .pfx a poté ho naimportujte znovu přímo do úložiště specifikovaného v konfiguračním souboru.
Pokud klíč není označený jako exportovatelný, požádejte o nový certifikát s použitím možnost "Klíč počítače".
Pokud identitě služby Federation Service nebylo uděleno oprávnění přístupu čtení k privátnímu klíči certifikátu, opravte tento stav pomocí modulu snap-in Certifikáty. Další informace jsou uvedeny v postupu „Přesvědčte se, že privátní klíče pro certifikáty jsou pro uživatelský účet služby AD FS přístupné“ v části „Co zkontrolovat před řešením problémů se službou AD FS“ v příručce pro řešení problémů se službou 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>