狀況
問題 1
當您使用 Microsoft 應用程式要求路由 (ARR) Helper 模組搭配X 轉送的︰標頭,不正確的用戶端 IP 位址,會為 web 伺服陣列背景工作產生的要求物件上。
問題 2
請考慮下列情況:
-
Web 伺服陣列是使用 HTTPS 要求轉送到工作者設定。
-
ARR 使用SecureConnectionIgnoreFlags的登錄值。
-
他 web 伺服陣列設定為執行健康情況檢查。
在這個案例中,健康情況檢查要求失敗。
問題 3
如果 web 伺服陣列設定要求轉送給工作者使用 HTTPS,ARR 會提供任何方法來驗證,web 伺服陣列背景工作會傳回特定的伺服器憑證。
原因
這些問題起因於 ARR.中的問題
下載資訊
可從「Microsoft 下載中心」下載下列檔案:
立即下載 ARR 3.0 套件。
如需有關如何下載 Microsoft 支援檔案的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
119591如何從線上服務取得 Microsoft 的支援檔案Microsoft 會掃描這個檔案有無病毒。Microsoft 會使用張貼檔案當日可使用的最新病毒偵測軟體。檔案會儲存在加強安全性的伺服器,以避免受到任何未經授權的更改。
先決條件
若要套用此 hotfix,您必須擁有應用程式要求路由 3.0 安裝 (3.0.1750 或更新版本)。
重新啟動需求
您可能必須套用此 hotfix 之後,請重新啟動伺服器。
Hotfix 取代資訊
此 hotfix 不會取代任何先前發行的 hotfix。
檔案資訊
此軟體更新的英文 (美國) 版本安裝的檔案具有下列表格中所列的屬性。這些檔案的日期和時間會以國際標準時間 (UTC) 格式列出。請注意,本機電腦上這些檔案的日期和時間,以您當地的時間和目前的日光節約時差來顯示。當您執行特定作業時的檔案時,其日期和時間可能也會變更。
對於所有支援的 x86 為基礎的應用程式要求路由 3.0 的版本
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
時間 |
平台 |
---|---|---|---|---|---|
requestRouter.dll |
7.1.1965.0 |
310,512 |
05-16-2016 |
21:50 |
x86 |
Microsoft.Web.Management.Arr.Client.dll |
7.1.1965.0 |
379,632 |
05-16-2016 |
21:51 |
msil |
Microsoft.Web.Management.Arr.dll |
7.1.1965.0 |
109,296 |
05-16-2016 |
21:51 |
msil |
對於所有支援的應用程式要求路由 3.0 的 x64 架構版本
檔案名稱 |
檔案版本 |
檔案大小 |
日期 |
時間 |
平台 |
---|---|---|---|---|---|
requestRouter.dll |
7.1.1965.0 |
326,896 |
05-16-2016 |
21:50 |
x64 |
Microsoft.Web.Management.Arr.Client.dll |
7.1.1965.0 |
379,632 |
05-16-2016 |
21:51 |
msil |
Microsoft.Web.Management.Arr.dll |
7.1.1965.0 |
109,296 |
05-16-2016 |
21:51 |
msil |
狀態
Microsoft 已確認這是在 < 適用於=""> 一節所列出的 Microsoft 產品中更新。
更多的資訊
安裝此 hotfix 之後,會進行下列修正程式。
Issue 1
此 hotfix 會將trustImmediateProxy屬性加入至應用程式要求路由 Helper 模組組態設定。接收要求的伺服器是否應該自動新增到 [ trustedProxies ] 清單中的TrustImmediateProxy控制項。如果沒有其他方式指定, trustImmediateProxy會設定為"false"。
您套用此 hotfix 之後, trustUnlisted屬性的預設值會從"true"變更為"false"。
範例設定︰
<proxyHelper> <trustedProxies trustUnlisted="false" trustImmediateProxy="true">
<add ipAddress="1.1.1.1" />
<add ipAddress="2.2.2.2" />
</trustedProxies>
</proxyHelper>
問題 2
您套用此 hotfix 之後,應用程式要求路由健康檢查會使用SecureConnectionIgnoreFlags設定。
問題 3
您套用此 hotfix 之後,應用程式要求路由支援 SSL 伺服器憑證公開金鑰,以選擇性的演算法的 OID 字串的每個 web 伺服陣列集合的設定。這會驗證從 web 伺服陣列工作者接收到的伺服器憑證。
範例設定︰
<webFarms> <webFarm name="MyServerFarm">
<server address="first.backend.com" enabled="true" />
<server address="second.backend.com" enabled="true" />
<applicationRequestRouting>
<publicKeys>
<publicKey bytes="112233445566778899AABBCCDDEEFF" algorithmOid="1.2.840.113549.1.1.11" />
<publicKey bytes="AABBCCDDEEFF112233445566778899" />
</publicKeys>
</applicationRequestRouting>
</webFarm>
</webFarms>
注意事項
-
[位元組] 欄位是不含空格字元的伺服器憑證的公開金鑰 blob 的十六進位表示法。
-
AlgorithmOid 是演算法的 OID 的字串表示。在上述範例中,1.2.840.113549.1.1.11 會對應到 SHA256 中。AlgorithmOid 是選擇性的。如果未指定,任何演算法 OID 是可接受。
參考
深入了解 Microsoft 用來描述軟體更新的術語。