MS11-100 中所述的安全性更新 2638420 部署指導

文章翻譯 文章翻譯
文章編號: 2659968 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

摘要

安全性更新 2638420 (描述於資訊安全佈告欄 MS11-100) 會變更 ASP.NET 建立表單驗證票證的方式。新行為與舊行為不相容。使用舊行為的伺服器無法讀取使用新行為產生的票證,反之亦然。所以如果您用的應用程式是使用表單驗證,則必須執行部署安全性更新 2638420 的特定步驟,以確認所有伺服器都一致使用新行為。

部署指導

因為票證行為變更的緣故,用使用表單驗證之應用程式的系統管理員必須執行部署安全性更新 2638420 的特定步驟,確認所有伺服器已一致地切換為新行為。

如果要判斷您的應用程式是否使用表單驗證,請檢查 System.web 檔案。使用表單驗證的應用程式會使用 System.web 檔案中的下列項目:
<authentication mode="Forms">
注意事項
  • 預設驗證模式是「Windows」。
  • 如果確實將 ASP.NET 設定為只使用表單驗證,則 ASP.NET 就只會使用表單驗證。
如果您用的應用程式是使用表單驗證,就必須使用下列其中一個方法部署安全性更新 2638420,以確認您的網站可繼續正確運作。

方法 1
同時將安全性更新 2638420 部署到 ASP.NET Web 伺服陣列中所有使用中的伺服器。如果要執行這項操作,請依照下列步驟執行:
  1. 移除負載平衡器兩指旋轉中一半的 Web 伺服陣列伺服器。
  2. 將更新安裝到這些伺服器上。
  3. 讓剩餘的伺服器一起離線以進行更新時,將移除的伺服器加回兩指旋轉。
方法 2
如果您無法將安全性更新 2638420 一次部署到所有 Web 伺服陣列伺服器,請改用此方法。

注意 我們不建議您使用此方法。當您設定此參數時,您可以在部分 Web 伺服陣列伺服器上安裝安全性更新,然後使用舊行為繼續運作。不過使用此設定參數的伺服器會處於不安全的狀態,且安全性更新中所有修正將無法修正這些伺服器。所以您應移除設定參數,才能在安全更新 2638420 部署到所有 Web 伺服陣列伺服器上時便立即啟用新的安全行為。

請先在 Web.config 或 Machine.config 檔案中設定相容性參數,再安裝安全性更新 2638420 使系統在安裝更新時強制執行舊行為。如果要執行這項操作,請依照下列步驟執行:
  1. 請使用文字編輯器 (如記事本) 開啟 Web.config 檔案或 Machine.config 檔案。
  2. 將下列文字加入檔案中,然後儲存檔案:
    <appSettings>
    <add key="aspnet:UseLegacyFormsAuthenticationTicketCompatibility" value="true" />
    </appSettings>
    更新並儲存 Web.config 或 Machine.config 檔案之後,您不需要重新啟動電腦或任何服務。設定變更通知會自動循環應用程式集區。
您可以在下列位置找到 Web.config 檔案:

如果是 .NET Framework 4.0 到 4.5 版
C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\Web.config
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\Web.config
如果是 .NET Framework 2.0 版到 3.5 版 SP1
C:\Windows\Microsoft.NET\Framework\v2.0.50727\CONFIG\Web.config
C:\Windows\Microsoft.NET\Framework64\v2.0.50727\CONFIG\Web.config
如果是 32-位元的電腦,則只會有 [Framework] 資料夾。如果是 64 位元電腦,則會有 [Framework] 和 [Framework64] 資料夾。所以如果您有同時有執行 CLR 2 + CLR 4 組合的 32 位元和 64 位元應用程式集區,就必須將項目新增上到述四個檔案中。

如果您也將 <appSettings> 項目新增到上述的 config 檔案中,則變更就會套用至整個系統,。

已知問題

  • 安裝安全性更新 2638420 之後,票證解密失敗

    啟用新的票證行為之後,所有使用舊行為產生的表單驗證票證就會失效。此問題發生時,使用者狀態是登出的,而伺服器管理員進行票證解密時可能會失敗。

    同時下列錯誤訊息會記錄到事件記錄檔中:

    記錄檔名稱:應用程式
    事件識別碼: 1315
    事件代碼: 4005
    事件訊息:要求的表單驗證失敗。原因:提供的票證無效。

    這些失敗可能會造成未預期的行為。例如,如果網頁是由<授權>元素所保護,就可能會發生「HTTP 401」或「HTTP 302」錯誤。

    安裝安全性更新 2638420 之後,因為先前產生的票證已到期,所以系統管理員將會發生數個上述的票證解密失敗。失敗發生的次數及頻率應會隨著新票證產生的時間越久,而變得越少。如果安裝安全性更新之後,解密失敗仍持續長期發生,這就表示某些 Web 伺服陣列伺服器仍在使用舊的票證行為。例如,如果下列其中一項狀況成立就可能會發生此問題:
    • 一或多個伺服器未安裝安全性更新 2638420。
    • 一或多個伺服器設定了上述的相容性參數。該相容性參數就是本文前段所述的相容性參數。

其他相關資訊

系統不再支援 TicketCompatibilityMode 設定參數

因為安全性更新 2638420 會變更表單驗證票證的格式,所以如果您已安裝並啟用安全性更新 2638420,系統就無法再支援 <forms/ticketCompatibilityMode> 設定參數。

如需有關 <forms/ticketCompatibilityMode> 設定參數的詳細資訊,請造訪下列 MSDN 網站:
有關 <forms/ticketCompatibilityMode> 設定參數的一般資訊
注意 :本文屬於「快速發佈」文章,係由 Microsoft 技術支援或組織內部直接建立。 本文所包含的資訊是為了回應新問題而依現況提供。 因此為了迅速對外發佈,文章內容可能含有印刷錯誤,而且可能會在不另行通知的情況下進行修改。 如需其他考量事項,請參閱使用規定

屬性

文章編號: 2659968 - 上次校閱: 2012年1月5日 - 版次: 1.0
這篇文章中的資訊適用於:
  • Microsoft .NET Framework 4.0
  • Microsoft .NET Framework 3.5 Service Pack 1
  • Microsoft .NET Framework 3.5
  • Microsoft .NET Framework 2.0 Service Pack 2
  • Microsoft .NET Framework 2.0 Service Pack 1 (x86)
  • Microsoft .NET Framework 2.0
  • Microsoft .NET Framework 1.1 Service Pack 1
  • Microsoft .NET Framework 1.1
  • Microsoft .NET Framework 1.0 Service Pack 3
  • Microsoft .NET Framework 1.0
  • Windows 7 Service Pack 1?應用於:
    • Windows 7 Enterprise
    • Windows 7 Professional
    • Windows 7 Ultimate
    • Windows 7 Home Premium
    • Windows 7 Home Basic
  • Windows 7 Enterprise
  • Windows 7 Professional
  • Windows 7 Ultimate
  • Windows 7 Home Premium
  • Windows 7 Home Basic
  • Windows Server 2008 R2 Service Pack 1?應用於:
    • Windows Server 2008 R2 Standard
    • Windows Server 2008 R2 Enterprise
    • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 R2 Standard
  • Windows Server 2008 R2 Enterprise
  • Windows Server 2008 R2 Datacenter
  • Windows Server 2008 Service Pack 2?應用於:
    • Windows Server 2008 for Itanium-Based Systems
    • Windows Server 2008 Datacenter
    • Windows Server 2008 Enterprise
    • Windows Server 2008 Standard
    • Windows Web Server 2008
  • Windows Vista Service Pack 2?應用於:
    • Windows Vista 商用入門版
    • Windows Vista 商用進階版
    • Windows Vista 家用入門版
    • Windows Vista 家用進階版
    • Windows Vista Starter
    • Windows Vista 旗艦版
    • Windows Vista 商用進階 64 位元版
    • Windows Vista 家用入門 64 位元版
    • Windows Vista 家用進階 64 位元版
    • Windows Vista 旗艦 64 位元版
    • Windows Vista 商用入門 64 位元版
  • Microsoft Windows Server 2003 Service Pack 2?應用於:
    • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
    • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
    • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
    • Microsoft Windows Server 2003, Web Edition
    • Microsoft Windows Server 2003, Datacenter x64 Edition
    • Microsoft Windows Server 2003, Enterprise x64 Edition
    • Microsoft Windows Server 2003, Standard x64 Edition
    • Microsoft Windows XP Professional x64 Edition
    • Microsoft Windows Server 2003, Datacenter Edition for Itanium-Based Systems
    • Microsoft Windows Server 2003, Enterprise Edition for Itanium-based Systems
  • Microsoft Windows XP Service Pack 3?應用於:
    • Microsoft Windows XP Home Edition (家用版)
    • Microsoft Windows XP Professional
關鍵字:?
atdownload kbbug kbexpertiseinter kbfix kbsecbulletin kbsecurity kbsecvulnerability KB2659968
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com