【问题标题】:SNI Certificate Support With C#使用 C# 的 SNI 证书支持
【发布时间】:2018-12-13 22:56:32
【问题描述】:

我想使用 C# 支持带有 SSL 证书(windows10 + IIS:10.0.17)的 SNI。可以通过以下方式添加绑定:

website.Bindings.Add(szBinding, hashBytes, sslStore);

如何在新添加的绑定上应用 SNI?以下代码无效:

website.Bindings[0].SslFlags = SslFlags.Sni;

Programmatically add binding on IIS 8 with SNI option 的问题解决了这个问题,但问题就像我之前描述的那样,使用这个标志“SslFlags.Sni”没有任何效果,即当我检查 IIS 中的绑定时,SNI 复选框仍然未选中。意味着,设置此标志不会影响 IIS 中的绑定。我在装有 IIS v.10.0.17 的 Windows 10 上。

我错过了什么?任何好的文章/帮助将不胜感激。

【问题讨论】:

  • 另一个问题解决了这个问题,但问题就像我之前描述的那样,使用这个标志“SslFlags.Sni”没有任何效果,即当我检查 IIS 中的绑定时,SNI 复选框仍然未选中。意味着,设置此标志不会影响 IIS 中的绑定。我在装有 IIS v.10.0.17 的 Windows 10 上。

标签: c# ssl sni


【解决方案1】:

绑定值存在问题。我使用的是ip:port: 而不是ip:port:hostname。使用带有主机名和 SNI 标志的绑定名称解决了这个问题。

此代码将添加启用 SNI 的绑定:

var szBinding = "IP:PORT:HOSTNAME";
website.Bindings.Add(szBinding, hashBytes, install.SslStore, SslFlags.Sni);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-08-15
    • 1970-01-01
    • 1970-01-01
    • 2011-08-18
    • 2012-03-01
    • 2013-08-31
    • 1970-01-01
    相关资源
    最近更新 更多