원본이 CertificationAuthority이고 ID가 102인 이벤트에 대한 수집 규칙

Microsoft.Windows.CertificateServices.CARole.2016.CertSvcEvents.102 (Rule)

인증서 서비스가 상호 인증서를 만들지 못했습니다.

Knowledge Base article:

요약

루트 CA(인증 기관) 인증서를 갱신하면 원래 루트 인증서 및 갱신된 루트 인증서가 모두 공용 키 계층 구조 내에서 계속 중요합니다. 원래 루트 CA 인증서는 계층 구조에 대한 트러스트의 궁극적인 기반으로 남아 있고 원래 계층 아래에서 발급된 모든 인증서에 대한 인증서 체인의 유효성을 검사하는 데 도움이 됩니다. 갱신된 루트 CA 인증서는 갱신 시작 날짜로부터 계층 구조에서 발급된 모든 인증서에 대한 트러스트 파운데이션을 제공합니다.

또한 이러한 시나리오를 지원하려면 상호 CA 인증서 쌍을 만들어 원래 루트 인증서와 갱신된 루트 인증서 간의 트러스트 관계를 설정해야 합니다.

CA 키가 변경되면 독립형 CA는 자체 서명 상호 인증서를 생성합니다. 각 루트 인증서의 수명이 겹치는 기간에 각각의 키 전환에서 대한 상호 인증서가 생성됩니다.

.

해결 방법

루트 CA(인증 기관) 인증서가 새 키를 사용하여 갱신되면 CA는 이전 CA 인증서와 새 CA 인증서 간의 상호 인증서를 자동으로 생성합니다. 상호 인증서 서명 중 암호화에 실패하면 확장명 충돌을 수정하여 문제를 해결할 수 있습니다. 그렇지 않으면 CryptoAPI 2.0 진단을 사용하여 추가 문제 해결 정보를 수집합니다.

이러한 절차를 수행하려면 CA 관리 권한이 있거나 적절한 권한을 위임받아야 합니다.

확장명 충돌 해결

확장명 충돌을 해결하려면:

참고: 사용자 지정 인증서 요청 구성에 대한 자세한 내용은 "Advanced Certificate Enrollment and Management(고급 인증서 등록 및 관리)" ( http://go.microsoft.com/fwlink/?LinkID=74577)를 참조하세요.

CryptoAPI 2.0 진단 사용

CryptoAPI 2.0 진단을 사용하려면:

확장명이 올바르고 CA 인증서 검증 및 체인이 올바른 경우 CA가 다시 시작되면 누락된 상호 CA 인증서가 자동으로 생성되어야 합니다.

추가 정보

CA 인증서를 갱신하는 동안 CA(인증 기관)가 상호 인증서를 만들어서 인증서를 직접 인증할 수 있는지 확인하려면:

Element properties:

TargetMicrosoft.Windows.CertificateServices.CARole.2016
CategoryEventCollection
EnabledTrue
Event_ID102
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.2016.CertSvcEvents.102" Enabled="true" Target="CSDisc!Microsoft.Windows.CertificateServices.CARole.2016" 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">102</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="AlertMessageID45e4d639a5ed47f4b4f4ae5914594727"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>