gpt4 book ai didi

c# - 获取无效 SSL 证书 (.NET) 的详细说明

转载 作者:太空宇宙 更新时间:2023-11-03 13:58:22 25 4
gpt4 key购买 nike

我的服务对客户网站进行健康检查并报告他们的健康状况。网站宕机的常见问题之一是 SSL 证书出现问题。

ServicePointManager.ServerCertificateValidationCallback可以访问证书、链等并进行手动检查(当 SslPolicyErrors 不是 None 时)。

我想知道是否有一个库/方法可以解释错误(例如,证书已过期或根证书不受信任等)

最佳答案

X509Chain class可以详细解释为什么某些证书被视为无效。

  var errors = new List<string>();
var chain = new X509Chain();
// certificate is the one you want to check
chain.Build(certificate);

// traverse certificate chain
foreach (var chainElement in chain.ChainElements)
{
// ChainElementStatus contains validation errors
foreach (var status in chainElement.ChainElementStatus)
{
errors.Add(status.Status + " " + chainElement.Certificate + ": " + status.StatusInformation.Trim());
}
}

这类似于X509Certificate2.Verify确实如此(如果您查看源代码),尽管 Verify 仅返回 true 或 false。

关于c# - 获取无效 SSL 证书 (.NET) 的详细说明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57879678/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com