Может появиться сообщение об ошибке при доступе к ASP.NET страницы ViewState включен после обновления с ASP.NET версии 1.1 для ASP.NET 2.0

Переводы статьи Переводы статьи
Код статьи: 911722 - Vizualiza?i produsele pentru care se aplic? acest articol.
Важные Эта статья содержит сведения об изменении реестра. Убедитесь, что резервную копию реестра перед внесением изменений. Убедитесь, что знаете, как восстановить реестр в случае возникновения проблем. Для получения дополнительных сведений о том, как резервное копирование, восстановлении и изменении реестра щелкните следующий номер статьи базы знаний Майкрософт:
256986 Описание реестра Microsoft Windows
Развернуть все | Свернуть все

В этой статье

Проблема

После обновления от Microsoft ASP.NET 1.1 Microsoft ASP.NET 2.0 некоторые ASP.NET приложений могут работать неправильно. Кроме того, при доступе к ASP.NET страницы включено состояние просмотра, может появиться следующее сообщение об ошибке:
[InvalidOperationException: Эта реализация не является частью Windows Platform FIPS проверки криптографических алгоритмов.]
System.Security.Cryptography.RijndaelManaged...ctor() + 200 System.Web.Configuration.MachineKeySection.ConfigureEncryptionObject() +2088
System.Web.Configuration.MachineKeySection.EnsureConfig() +904
System.Web.Configuration.MachineKeySection.GetEncodedData (буфер Byte [], Byte [] модификатор типа Int32 начать, Int32 & длина) +88
System.Web.UI.ObjectStateFormatter.Serialize(Object stateGraph) +1320
System.Web.UI.Util.SerializeWithAssert (IStateFormatter форматера, объект stateGraph) +248
System.Web.UI.HiddenFieldPageStatePersister.Save() +280
System.Web.UI.Page.SaveAllState() +6488
System.Web.UI.Page.ProcessRequestMain (логическое значение includeStagesBeforeAsyncPoint логическое includeStagesAfterAsyncPoint) +17240
--------------------------------------------------------------------------------
Сведения О версии: корпорации Майкрософт.NET Framework версии: 2.0.50606.0; ASP.NET Версия: 2.0.50606.0

Причина

Данная проблема возникает при следующих условиях значение true:
  • В
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
    параметр реестра имеет значение 1.
  • ASP.NET 2.0 использует реализацию RijndaelManaged алгоритма AES, при обработке данных о состоянии представления. Реализация ReindaelManaged не был сертифицирован Национальным институтом стандартов и технологий (NIST) как совместимый с федеральными обработки информации стандартных (FIPS). Таким образом алгоритм AES не является частью криптографических алгоритмов Windows Platform FIPS проверен.

Временное решение

Важные Эти шаги могут усилить угрозу безопасности. Эти действия может сделать компьютер или сеть более уязвим для атак злоумышленников и проникновения потенциально опасных программ, например вирусов. Рекомендуется следовать инструкциям, чтобы используемые приложения функционировали, они предназначены для надлежащей статье. Перед внесением изменений рекомендуется оценить риски, связанные с реализацией этого процесса в конкретной среде. В случае реализации этого процесса примите все необходимые дополнительные меры для защиты системы. Рекомендуется использовать эту процедуру только в случае крайней необходимости этого процесса.

Чтобы обойти эту проблему, измените конфигурацию в файл Web.config уровня приложения. Указать, что ASP.NET использует алгоритм тройного шифрования данных (3DES) для обработки данных состояния просмотра. Чтобы сделать это, выполните следующие действия.
  1. В тексте редактор, например «Блокнот» откройте файл Web.config уровня приложения.
  2. Найдите в файле Web.config <system.web></system.web> раздел.
  3. Добавьте следующие строки <machinekey></machinekey> в разделе <system.web></system.web> раздел:
    <machineKey validationKey="AutoGenerate,IsolateApps" decryptionKey="AutoGenerate,IsolateApps" validation="3DES" decryption="3DES"/>
  4. Сохраните файл Web.config.
  5. Перезагрузка Служба Microsoft Internet информации СЛУЖБ. Для этого выполните следующую команду в командной строке:
    IISReset
Важные Теоретически алгоритм 3DES менее безопасен, чем алгоритм AES (Rijndael). Рекомендуется использовать алгоритм AES, по возможности обеспечить безопасность системы.

Дополнительная информация

Действия по воспроизведению проблемы

Предупреждение При неправильном изменении реестра с помощью редактора реестра или иным способом могут возникнуть серьезные проблемы. Эти проблемы могут потребовать переустановки операционной системы. Корпорация Майкрософт не гарантирует эти проблемы. Изменения в реестр на ваш собственный риск.

Прежде чем можно воспроизвести эту проблему, необходимо установить
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
подраздел реестра значение 1, чтобы включить политику FIPS-совместимых алгоритмов.

Закройте редактор реестра и выполните следующие действия:
  1. Нажмите кнопку Начало, нажмите кнопку Запустить, тип regedit, а затем нажмите кнопку ОК.
  2. Найдите и выделите следующий раздел реестра:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
  3. На Редактирование меню, нажмите кнопку Изменить.
  4. Тип 1, а затем нажмите клавишу ВВОД.
Примечание Необходимо перезагрузить компьютер новый параметр вступил в эффект.

Чтобы воспроизвести проблему, выполните следующие действия:
  1. В Visual Studio 2005 нажмите кнопкуНовый веб-узел В меню Файл меню, нажмите кнопку ASP.NET веб-узла Из спискаШаблоны, типБуква диска:\Путь\KB911722 В диалоговом окнеРасположение поле, а затем нажмите кнопку ОК.
  2. В обозревателе решений щелкните правой кнопкой мышиDefault.aspx, а затем нажмите кнопку Открыть.
  3. Замените существующий код следующим кодом.
    <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    
    <html xmlns="http://www.w3.org/1999/xhtml" >
    <head>
    	<title>Test Page for KB911722</title>
    </head>
    <body>
    <form id="Form1" runat="server" >
     <script language="C#" runat="server" > 
     public void Page_Load() 
     { 
     	Label1.Text = "EnableViewState attribute is set to " + Page.EnableViewState.ToString(); 
     } 
     </script> 
    
     <asp:Label id="Label1" runat="server" Text="text"></asp:Label>
    </form>
    </body>
    </html>
  4. На Отладка меню, нажмите кнопку Начало Отладка.
Появляется сообщение об ошибке, описанное в В разделе «Проблема».

Для получения дополнительных сведений о влиянии включения «Системная криптография: использовать FIPS совместимые алгоритмы для шифрования, хэширования, и подписывания» в Windows XP и более поздних версиях Windows XP, щелкните следующий номер статьи базы знаний Майкрософт:
811833Влияние Включение «Системная криптография: использовать FIPS совместимые алгоритмы для шифрования, хеширования и подписывания» параметра безопасности в Windows XP и более поздних версий

Свойства

Код статьи: 911722 - Последний отзыв: 18 июня 2011 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.1
Ключевые слова: 
kbtshoot kbprb kbmt KB911722 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:911722

Отправить отзыв

 

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