我們有一些遺留的ASP.NET代碼,用於檢測請求是否安全,並在需要時重定向到https版本的頁面。ASP.NET Request.ServerVariables [「SERVER_PORT_SECURE」]和代理SSL通過負載平衡器
此代碼使用Request.ServerVariables [「SERVER_PORT_SECURE」]來檢測是否需要SSL。
我們的運營小組建議在負載均衡器(F5 Big-IP)上代替Web服務器(假設出於此問題的目的,這是一項要求)執行代理SSL。
其後果是所有請求都以HTTP身份顯示給Web服務器。
我的問題:我們如何才能讓Web服務器知道傳入的連接在它到達負載均衡器之前是安全的?我們可以繼續使用Request.ServerVariables [「SERVER_PORT_SECURE」]?
你知道負載均衡器配置將發送標題,以便不需要更改應用程序代碼嗎?
我只是感到驚訝,鑑於Request.IsSecureConnection已存在7年,他們將使用此方法來檢測安全連接。 – 2010-03-11 19:49:00
我想我們可以梳理我們的遺留代碼並進行這些類型的更改...但是投資回報率是多少?它能解決任何問題嗎? – frankadelic 2010-03-12 04:52:48
不存在你的情況,因爲你的連接總是在F5後面看起來不安全。您需要寫入標題並在Global.asax.cs中查看Begin Request。 – 2010-03-15 20:48:18