我有一个ASP.NET应用程序,它将托管多个租户(Software-as-a-Service样式)。每个租户都有自己的域名(www.mydomain.com,www.yourdomain.com)和他们自己的SSL证书。
有没有办法托管应用程序,以便所有租户都在同一个应用程序实例上?
答案 0 :(得分:3)
问题是经典SSL要求在Web浏览器指示要使用哪个主机之前显示证书。因此,您只能为每个IP /端口组合配置一个证书。
TLS扩展名为Server Name Indication,允许浏览器指示要与之通信的逻辑服务器。此功能为supported as of IIS 8.0 (Windows Server 2012)。
通配符可以正常工作,因为证书本身表示它对该域下的所有服务器都有效。
答案 1 :(得分:1)
您仅限于IIS - 或者可以选择软/硬代理或内容交换硬件吗?
认为您可以在代理或内容交换机上终止SSL - 然后将请求转换为您自己的内部网址。
e.g。 foo.com/x和bar.com/y分别被翻译成myapp / x和myapp / y - 在请求标题中传递原始主机名。