Collection Rule for event with source CertificationAuthority and ID 94

Microsoft.Windows.CertificateServices.CARole.6.2.CertSvcEvents.94 (Rule)

Certificate Services cannot open the NTAuth store.

Knowledge Base article:

Summary

Active Directory Certificate Services (AD CS) requires at least Read access, and in some instances Write access, to certain objects in Active Directory Domain Services (AD DS). Failure to access these Active Directory objects can prevent AD CS from starting.

Resolutions

Enable the CA to open AD DS containers

To resolve this problem:

To perform this procedure, you must have membership in Domain Admins, or you must have been delegated the appropriate authority.

Confirm permissions on essential AD DS containers and objects

To confirm that the CA has necessary permissions on AD DS containers and objects within these containers:

The following are all Active Directory permissions required by a computer hosting a CA. Some of these permissions are achieved via membership in the Cert Publishers group.

To perform these procedures, you must have Manage CA permission, or you must have been delegated the appropriate authority.

Publish a CA certificate

To manually publish the CA certificate:

Note:  The placeholders <domainname> and <com> are the namespace names of the domain in which the CA is installed. <Cert.cer> is the name of the CA certificate file. The "-f" option re-creates the object even if it has been deleted.

If you do not know where your CA certificate is located, you can identify it by completing the following procedure on the computer hosting your CA. By default, this file is stored in %systemroot%\system32\certsrv\certenroll.

Locate the CA certificate file on a computer

To locate the CA certificate file on the local file system:

Additional

To check the connection between a CA and Active Directory Domain Services (AD DS):

Replace [domainname] with the name of the namespace in which the CA is installed.

Confirm permissions on essential AD DS containers and objects

To perform this procedure, you must have membership in Domain Admins, or you must have been delegated the appropriate authority.

To confirm that the CA has necessary permissions on AD DS containers and objects within these containers:

The following are all Active Directory permissions required by a computer hosting a CA. Some of these permissions are achieved via membership in the Cert Publishers group.

Element properties:

TargetMicrosoft.Windows.CertificateServices.CARole.6.2
CategoryEventCollection
EnabledTrue
Event_ID94
Event SourceMicrosoft-Windows-CertificationAuthority
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
AD CS Active Directory Domain Services Connection
Event Description: {0}
Event LogApplication

Member Modules:

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

Source Code:

<Rule ID="Microsoft.Windows.CertificateServices.CARole.6.2.CertSvcEvents.94" Enabled="onEssentialMonitoring" Target="CSDisc!Microsoft.Windows.CertificateServices.CARole.6.2" 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="UnsignedInteger">EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="UnsignedInteger">94</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery Type="String">PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value Type="String">Microsoft-Windows-CertificationAuthority</Value>
</ValueExpression>
</SimpleExpression>
</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="AlertMessageIDd30877a43b0f471d91dfa87f644c101b"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>