Не можете найти установленный, но просроченный сертификат? - PullRequest
0 голосов
/ 15 апреля 2019

Срок действия одного из моих сертификатов истек. Это приводит к сбою следующего кода:

 X509Store store = new X509Store(settings.CertificateStore, settings.CertificateLocation);
            store.Open(OpenFlags.ReadOnly);
            X509Certificate2Collection certs = store.Certificates.Find(X509FindType.FindByThumbprint, settings.Thumbprint, true);
            store.Close();

            if (certs.Count > 0)
            {
                LogHandler.Instance.Log(LogLev.Info, $"UseSecureConnection > Location:{settings.CertificateLocation}, Store:{settings.CertificateStore}, Thumbprint:{settings.Thumbprint}");
                _serviceHost.Credentials.ServiceCertificate.SetCertificate(settings.CertificateLocation,
                settings.CertificateStore, X509FindType.FindByThumbprint, settings.Thumbprint);

            }
            else
                throw new Exception("Could not find certificate with thumbprint " + settings.Thumbprint);

Этот код работал отлично, до истечения срока действия сертификата.

Как мне получить его, даже если срок его действия истек?

1 Ответ

1 голос
/ 16 апреля 2019
store.Certificates.Find(X509FindType.FindByThumbprint, settings.Thumbprint, false)

должен это сделать. Последний параметр равен validOnly.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...