Вопрос по certificate, .net – Нужен ли нам корневой сертификат, установленный на машине всегда?

2

Я использую смарт-карту для аутентификации пользователя. У меня есть служба аутентификации (SecurityTokenService), которая обрабатывает логику аутентификации на сервере.

я используюX509Certificate2.Verify () подтвердить сертификат. Поскольку этот API-интерфейс может проверять, действителен ли сертификат или отозван, подключившись к нему и связавшись с Центром сертификации (CA), нужен ли мне корневой сертификат на сервере?

Can we avoid having root certificate on our local computer? Or root certificate is always mandatory?

Ваш Ответ

1   ответ
5

First of all X509Certificate2.Verify() does not check if all the certificates in chain are revoked. From this post I came to know that Verify method internally uses Crypt32 CertVerifyCertificateChainPolicy function. The documentation for it says that it does not perform certificate revocation checking. In short, the Verify method just checks if the certificate for which it's called, is revoked or not.

Regarding root certificate :

If you are using X509Certificate2.Verify() and root cert is absent, then the method will outrightly return false. So with this method root certificate is absolutely required. If you are using X509Chain to build the trust chain, then you can decide whether to exclude root certificate revocation or whether to go online/offline to verify revocation status of the certificates. However, whether you go online or not, or you exclude root certificate or not, you get the PartialChain value in the ChainStatus if the root certificate is missing. So to build the full trust chain, you need a root certificate on your machine.

Надеюсь, что это поможет кому-то, кто хочет узнать немного больше о проверке сертификата в C #.

Error: User Rate Limit Exceeded
Error: User Rate Limit ExceededPartialChainError: User Rate Limit Exceeded Learner
Error: User Rate Limit ExceededrootError: User Rate Limit Exceededexplicitly trustedError: User Rate Limit Exceededfor this particular frameworkError: User Rate Limit Exceeded

Похожие вопросы