找不到已安装但已过期的证书?

时间:2019-04-15 08:04:39

标签: c# .net certificate

我的证书之一已过期。这使以下代码失败:

 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 个答案:

答案 0 :(得分:1)

SELECT 
    CASE WHEN user_input_variable = 'y' THEN        
    (SELECT * FROM table_foo WHERE bar = '6f322766-0ec0-4d24-840f-c857a82a6efe')        

    ELSE
    (SELECT 0)
     END

应该这样做。 The last parameterstore.Certificates.Find(X509FindType.FindByThumbprint, settings.Thumbprint, false)