具有來源 CertificationAuthority 和 ID 86 的事件收集規則

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

憑證服務無法使用指定的加密金鑰提供者。

Knowledge Base article:

摘要

Active Directory 憑證服務 (AD CS) 需要金鑰修復代理憑證、Exchange (XCHG) 憑證和金鑰,才能支援金鑰保存。對於公開金鑰基礎結構而言,金鑰修復代理憑證、XCHG 憑證以及建立這些憑證所需的密碼編譯服務提供者 (CSP) 是否正常運作相當重要。

解決方式

使用支援金鑰保存與修復的密碼編譯服務提供者

使用系統管理工具可能無法解決由密碼編譯提供者 (用於執行加密和加密憑證產生相關工作的軟體元件) 造成的問題。但是,下列工作可以提供診斷資訊以在解決過程中提供協助:

識別並測試密碼編譯提供者

若要執行此程序,您必須擁有管理 CA 權限,或者必須已被委派適當的權限。

若要識別並測試您所使用的密碼編譯提供者:

重設預設加密金鑰提供者

若要執行此程序,您必須擁有本機 Administrators 的成員資格,或者必須已經被委派適當的權限。

透過將下列登錄機碼設定為 [Microsoft 軟體金鑰儲存提供者],您可以將憑證授權單位 (CA) 設定為針對加密憑證使用預設 Microsoft 提供者。

附註:您可能必須撤銷目前的 CA Exchange 憑證 (如果有的話),這樣才能發出基於新提供者的新憑證。然後,重新啟動 CA。

若要修改已設定的加密金鑰提供者:

注意: 不正確地編輯登錄可能會對系統造成嚴重損害。在變更登錄前,您應先備份所有重要的資料。

其他

若要確認金鑰保存和修復是否正確運作:

Element properties:

TargetMicrosoft.Windows.CertificateServices.CARole.6.2
CategoryEventCollection
EnabledTrue
Event_ID86
Event SourceMicrosoft-Windows-CertificationAuthority
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
AD CS 金鑰保存和修復
事件描述: {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.86" 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">86</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="AlertMessageIDda66f694c2aa435dbbbc3e09e3585e3d"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>