我有一个在 HTTPS(SSL)中运行的 ASP.NET 应用程序。它在我的本地计算机和 Amazon AWS(生产环境)中运行良好。
但是当我在办公室中托管此应用程序(用于测试)时,发生了一些奇怪的事情。
我可以在浏览器中看到 HTTPS 和锁定标志。
Fiddler 还显示输出已加密,并显示端口 443。
但
HttpContext.Current.Request.IsSecureConnection
返回 false并
HttpContext.Current.Request.Url.Scheme
返回 HTTP。
在办公室我们使用 Juniper SSG 防火墙和 TMG 2010(Forefront Threat Management Gateway 2010)。因此服务器通过 Juniper 和 TMG 2010 接收请求。
答案1
检查 TMG 发布规则并确保您没有使用纯 HTTP 连接到后端服务器。
可以使用 SSL 侦听器发布网站,但使用纯 HTTP 从 TMG 连接到服务器本身。在这种情况下,就客户端而言,连接是安全的。就 Web 服务器本身而言,连接是不安全的。