Reguła zbierania danych dla zdarzenia o źródle CertificationAuthority i identyfikatorze 21

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

Niepowodzenie przetworzenia żądania przez usługi certyfikatów.

Knowledge Base article:

Podsumowanie

Jedną z podstawowych funkcji urzędu certyfikacji (CA) jest ocena otrzymywanych od klientów żądań certyfikatów i wystawianie certyfikatów tym klientom pod warunkiem spełnienia wstępnie zdefiniowanych kryteriów. Aby rejestracja certyfikatu powiodła się, przed przesłaniem żądania musi być spełnionych kilka warunków: urząd certyfikacji musi mieć prawidłowy certyfikat urzędu certyfikacji, szablony certyfikatów, konta klientów i żądania certyfikatów muszą być poprawnie skonfigurowane oraz musi istnieć sposób przesyłania żądania klienta do urzędu certyfikacji, sprawdzania tego żądania i instalowania wystawionego certyfikatu.

Rozwiązania

Usunięcie problemów uniemożliwiających przetwarzanie żądań certyfikatów

Istnieje wiele problemów, które mogą uniemożliwić przetworzenie żądania certyfikatu. Jeśli informacje podane w komunikacie w dzienniku zdarzeń nie wystarczają do rozwiązania problemu, w identyfikacji przyczyny mogą pomóc błędy i ostrzeżenia zgłoszone przed tym komunikatem lub po nim. 

Aby zidentyfikować i rozwiązać problemy, które mogą blokować przetwarzanie żądań certyfikatów:

Aby wykonać poniższe procedury, trzeba posiadać uprawnienie Zarządzaj urzędem certyfikacji lub otrzymać odpowiednie uprawnienia poprzez oddelegowanie.

Sprawdzanie łańcucha certyfikatów urzędu certyfikacji

Aby zweryfikować łańcuch urzędu certyfikacji:

Generowanie i publikowanie nowych list CRL

Jeśli dane wyjściowe w wierszu polecenia wskazują, że lista CRL urzędu certyfikacji wygasła, wygeneruj dla tego urzędu nowe listy CRL (podstawową i różnicową) i skopiuj je do wymaganych lokalizacji. Może to wymagać ponownego uruchomienia urzędu certyfikacji będącego w trybie offline.

Na komputerze urzędu certyfikacji sprawdź aktualną opublikowaną listę CRL. Domyślnie urząd certyfikacji tworzy listy CRL w folderze %windir%\System32\CertSrv\CertEnroll. Jeśli obecne listy CRL w tej lokalizacji wygasły lub są nieważne, możesz opublikować nową listę CRL przy użyciu poniższej procedury.

Aby opublikować nową listę CRL z wykorzystaniem przystawki Urząd certyfikacji:

Listy CRL można też generować i publikować z wiersza polecenia.

Aby opublikować listę CRL za pomocą narzędzia wiersza polecenia Certutil:

Jeśli lista CRL jest identyfikowana jako niedostępna, choć w katalogu lokalnym komputera urzędu certyfikacji istnieje poprawna lista CRL, upewnij się, że urząd certyfikacji może nawiązać połączenie z punktem dystrybucji list CRL, a następnie powtórz wcześniejsze kroki, aby ponownie wygenerować i opublikować listy CRL.

Listy CRL można ręcznie publikować w Usługach domenowych Active Directory, używając następującego polecenia:

certutil -dspublish"<nazwa_pliku_crl.crl>" ldap:///CN=<nazwa urzędu certyfikacji>,CN=<nazwa hosta urzędu certyfikacji>,CN=CDP,CN=Public Key Services,CN=Services,CN=Configuration,DC=<contoso>,DC=<com>?certificateRevocationList?base?objectClass=cRLDistributionPoint

Nazwę nazwa_pliku_crl.crl zastąp nazwą używanego pliku listy CRL, zmienne <nazwa urzędu certyfikacji> i <nazwa hosta urzędu certyfikacji> zastąp odpowiednio nazwą urzędu certyfikacji i nazwą hosta, na którym został on uruchomiony, a ciągi <contoso> i <com> zastąp przestrzenią nazw używanej domeny usługi Active Directory.

Sprawdzanie skonfigurowanych punktów dystrybucji list CRL

Sprawdź wszystkie skonfigurowane punkty dystrybucji list CRL, aby upewnić się, że publikacja powiodła się oraz że nowe listy CRL są dostępne w sieci.

Aby sprawdzić skonfigurowane punkty dystrybucji list CRL z użyciem przystawki Urząd certyfikacji:

Aby sprawdzić adresy URL skonfigurowanych punktów dystrybucji list CRL za pomocą narzędzia Certutil:

Sprawdzanie kolejki nieudanych żądań na komputerze urzędu certyfikacji

Aby sprawdzić kolejkę nieudanych żądań na komputerze urzędu certyfikacji za pomocą przystawki Urząd certyfikacji:

Aby sprawdzić nieudane żądania za pomocą narzędzia Certutil:

Dodatkowe informacje

Aby upewnić się, że przetwarzanie żądań certyfikatów działa poprawnie:

Element properties:

TargetMicrosoft.Windows.CertificateServices.CARole.2016
CategoryEventCollection
EnabledTrue
Event_ID21
Event SourceMicrosoft-Windows-CertificationAuthority
Alert GenerateTrue
Alert SeverityError
Alert PriorityHigh
RemotableTrue
Alert Message
Przetwarzanie żądania (rejestracji) certyfikatu w usługach AD CS — żądanie nie powiodło się (szczegóły)
Opis zdarzenia: {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.21" 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">21</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="AlertMessageID42b3cc830b884161b292de001ad930e4"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue>$Data/EventDisplayNumber$</SuppressionValue>
<SuppressionValue>$Data/PublisherName$</SuppressionValue>
<SuppressionValue>$Data/LoggingComputer$</SuppressionValue>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>