如何在SSLStream的AuthenticateAsServer()中提供证书链?

ald*_*dem 5 .net c# mono ssl https

我正在使用标准SSLStream在C#中实现SSL服务器.

到目前为止一切都很好,但是 - AuthenticateAsServer只接受单个证书作为参数,而我必须提供完整的链(其中3个).

我用所有证书构建了PKCS12结构(在Mono.Security的帮助下),然后调用new X509Certificate2(pkcs12.GetBytes()),但是,只有一个呈现给客户端.

所以,问题是 - 如何做到这一点?

谢谢!

PS:我需要一个可移植的解决方案,它可以在Windows上的Mono和.NET中运行.

JB.*_*ca. 0

您的设置是正确的。Web 服务器仅使用一个带有SslStream(或其他任何内容)的证书。

该证书可能缺少一些信息:Authority Information Access服务器证书的扩展名应指向将下载中间证书的 URI。

是否缺少此信息?