如何从 C# 应用程序检查与 ADCS 证书颁发机构服务器的连接?

How to check connectivity to ADCS Certificate Authority Server from a C# Application?

我在 windows 服务器中设置了 CA 服务器。我在 C# 中有一个用于 ADCS 证书管理的客户端代码,我能够通过使用 DCOM 接口发送 CSR 从 ADCS 证书颁发机构检索签名证书。在向CA提交CSR之前,我需要检查CA服务器中的CA特征是否为运行。如何在我的应用程序中实施此连接检查?

您可以使用CertSrvIsServerOnline函数来检查服务器是否在线。如果服务器离线,该函数将挂起大约 20 秒左右。

您也可以尝试调用 ICertRequest::GetCAProroperty 反对任何 属性。将此方法包装在 try/catch 块中。如果服务器宕机,将抛出异常。