到目前为止,我的问题是一个纯粹的理论问题。 我想制作一个支持多个站点的 CMS。
到目前为止我还没有弄清楚的问题是: 我如何从代码隐藏附加 https 协议(protocol)的 ssl 证书,而不是通过托管接口(interface)或 iis 本身附加它(主要问题是我想为每个站点使用不同的 ssl 证书,而不是将它们分组到一个证书,最多允许 5 个域,并且仍然会说它们是同一实体)
最佳答案
这在 ASP.NET 级别上无法解决。
原因是对于 HTTPS 请求,SSL 握手(其中提供证书)在客户端发送 HTTP 请求之前执行,您可以从中了解域。
唯一的异常(exception)是 TLS 中的服务器名称指示扩展,它允许客户端在 SSL 请求中指定所需的域。但是许多客户端不支持此扩展,并且它不存在于仍在使用的 SSL3 协议(protocol)版本中。即使有了这个扩展,也是由 SSL 服务器决定提供哪个证书。
关于asp.net - 使用代码动态加载 SSL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14046784/