我在哪里可以找到X509证书的“targetHost”?

时间:2012-12-24 16:02:29

标签: c# .net ssl x509certificate

尝试设置SslStream时,该示例在客户端中有一个调用:

sslStream.AuthenticateAsClient(targetHost);

对于AuthenticateAsClient,文档说明“The value specified for targetHost must match the name on the server's certificate.

如何找到x509证书的targetHost

2 个答案:

答案 0 :(得分:2)

规则因协议而略有不同。在RFC 6125: Representation and Verification of Domain-Based Application Service Identity within Internet Public Key Infrastructure Using X.509 (PKIX) Certificates in the Context of Transport Layer Security (TLS)中已经进行了跨协议的协调工作。

这就是说,RFC 6125指南(适用于任何使用SSL / TLS的协议)与HTTPS的指令大致相同,后者在RFC 2818 (HTTP over TLS), Section 3.1中定义。

简而言之,如果证书具有DNS类型的主题备用名称(SAN)扩展名,则其中一个必须是您尝试连接的目标主机名。如果没有此类扩展,您必须查看证书的主题DN并找到公用名(CN)RDN:它必须与目标主机名匹配。

答案 1 :(得分:0)

我不是这个领域的专家,但我建议targetHost是服务器的名称,并且您的X509Certificate需要是为验证您的服务器而颁发的证书。在这种情况下,它将是证书的Subject property