Server Instance Certificate Close To Expiration

Microsoft.Dynamics.Nav.2015.ServerInstanceCertificateCloseToExpiration (UnitMonitor)

The certificate that is used by the Microsoft Dynamics NAV 2015 Server instance is close to its expiration date.

Knowledge Base article:

Summary

This monitor detects when the certificate that is used by the Microsoft Dynamics NAV 2015 Server instance is close to its expiration date.

Causes

If the certificate expires, users cannot be authenticated.

Resolutions

To renew the server certificate, use the Set-NAVServerSettings cmdlet to update the 'ServicesCertificateThumbprint' with a valid certificate and restart the Microsoft Dynamics NAV 2015 Server instance.

Element properties:

TargetMicrosoft.Dynamics.Nav.2015.ServerInstance
Parent MonitorSystem.Health.ConfigurationState
CategoryConfigurationHealth
EnabledTrue
Alert GenerateTrue
Alert SeverityMatchMonitorHealth
Alert PriorityNormal
Alert Auto ResolveTrue
Monitor TypeMicrosoft.Windows.2SingleEventLog2StateMonitorType
RemotableTrue
AccessibilityPublic
Alert Message
The Microsoft Dynamics NAV 2015 certificate must be renewed before it expires.
This alert indicates that the Microsoft Dynamics NAV 2015 certificate must be renewed before it expires.
If you do not renew the certificates, users cannot access Microsoft Dynamics NAV.
RunAsMicrosoft.Dynamics.Nav.2015.DefaultAccount

Source Code:

<UnitMonitor ID="Microsoft.Dynamics.Nav.2015.ServerInstanceCertificateCloseToExpiration" Accessibility="Public" Enabled="true" Target="Microsoft.Dynamics.Nav.2015.ServerInstance" ParentMonitorID="Health!System.Health.ConfigurationState" Remotable="true" Priority="Normal" TypeID="Windows!Microsoft.Windows.2SingleEventLog2StateMonitorType" ConfirmDelivery="false" RunAs="Microsoft.Dynamics.Nav.2015.DefaultAccount">
<Category>ConfigurationHealth</Category>
<AlertSettings AlertMessage="Microsoft.Dynamics.Nav.2015.ServerInstanceCertificateCloseToExpiration.AlertMessage">
<AlertOnState>Warning</AlertOnState>
<AutoResolve>true</AutoResolve>
<AlertPriority>Normal</AlertPriority>
<AlertSeverity>MatchMonitorHealth</AlertSeverity>
</AlertSettings>
<OperationalStates>
<OperationalState ID="FirstEventRaised" MonitorTypeStateID="FirstEventRaised" HealthState="Warning"/>
<OperationalState ID="SecondEventRaised" MonitorTypeStateID="SecondEventRaised" HealthState="Success"/>
</OperationalStates>
<Configuration>
<FirstComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</FirstComputerName>
<FirstLogName>Application</FirstLogName>
<FirstExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">EventSourceName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Service!Microsoft.SystemCenter.NTService"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<!-- The service certificate is close to its expiration date. (eventid = 1003) -->
<Value>1003</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</FirstExpression>
<SecondComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</SecondComputerName>
<SecondLogName>Application</SecondLogName>
<SecondExpression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">EventSourceName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">$Target/Property[Type="Service!Microsoft.SystemCenter.NTService"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<!-- Monitoring the service certificate expiration. (eventid = 1006) -->
<Value>1006</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</SecondExpression>
</Configuration>
</UnitMonitor>