Você pode receber uma mensagem de erro quando você acessa páginas da Web ASP.NET que tem ViewState habilitado após a atualização do ASP.NET 1.1 para ASP.NET 2.0

Traduções deste artigo Traduções deste artigo
ID do artigo: 911722 - Exibir os produtos aos quais esse artigo se aplica.
importante Este artigo contém informações sobre como modificar o registro. Certifique-se de que você faça backup do registro antes de modificá-lo. Certifique-se que você sabe como restaurar o registro se ocorrer um problema. Para obter mais informações sobre como fazer backup, restaurar e modificar o registro, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
256986Descrição do registro do Microsoft Windows
Expandir tudo | Recolher tudo

Neste artigo

Sintomas

Após a atualização do Microsoft ASP.NET 1.1 para o Microsoft ASP.NET 2.0, alguns aplicativos baseados no ASP.NET podem não funcionar corretamente. Além disso, quando você acessa páginas da Web ASP.NET que tem ViewState habilitado, você receberá a seguinte mensagem de erro:
[InvalidOperationException: esta implementação não é parte dos algoritmos criptográficos validados por Windows Platform FIPS.]
System.Security.Cryptography.RijndaelManagedctor() +200 System.Web.Configuration.MachineKeySection.ConfigureEncryptionObject() +2088
System.Web.Configuration.MachineKeySection.EnsureConfig() +904
System.Web.Configuration.MachineKeySection.GetEncodedData (byte [] buf, byte [] Modificador, início de Int32, Int32 & comprimento) +88
System.Web.UI.ObjectStateFormatter.Serialize(Object stateGraph) +1320
System.Web.UI.Util.SerializeWithAssert(IStateFormatter Formatter, Object stateGraph) +248
System.Web.UI.HiddenFieldPageStatePersister.Save() +280
System.Web.UI.Page.SaveAllState() +6488
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +17240
--------------------------------------------------------------------------------
Informações de versão: Microsoft .NET Framework Version:2.0.50606.0; ASP.NET versão: 2.0.50606.0

Causa

Esse problema ocorre quando as seguintes condições forem verdadeiras:
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
    subchave do registro é definido como 1.
  • O ASP.NET 2.0 usa a implementação RijndaelManaged do algoritmo AES quando ele processa dados de estado de exibição. A implementação ReindaelManaged não tenha sido certificada pelo National Institute of Standards and Technology (NIST) como compatível com o Federal Information Processing Standard (FIPS). Portanto, o algoritmo AES não é parte dos algoritmos criptográficos validados por Windows Platform FIPS.

Como Contornar

importante Essas etapas podem aumentar o risco de segurança. Essas etapas também podem tornar o computador ou rede mais vulneráveis aos ataques de usuários mal-intencionados ou softwares mal-intencionados como vírus. Recomendamos o processo descrito neste artigo para ativar programas para operar como eles são criados para ou para implementar recursos específicos do programa. Antes de fazer essas alterações, recomendamos que avalie os riscos associados à implementação deste processo no seu ambiente específico. Caso você decida implementar esse processo, execute quaisquer etapas apropriadas adicionais para ajudar a proteger o sistema. Recomendamos que você use esse processo apenas se você realmente precisar esse processo.

Para contornar esse problema, altere a configuração no arquivo Web.config de nível de aplicativo. Especifique que usam o Triple Data algoritmo padrão de criptografia (3DES) para processar dados de estado de exibição do ASP.NET. Para fazer isso, execute as seguintes etapas:
  1. Em um editor de texto, como o bloco de notas, abra o arquivo Web.config de nível de aplicativo.
  2. No arquivo Web.config, localize o <system.web> seção.
  3. Adicione o seguinte <machinekey> seção para in a <system.web> seção:
    <machineKey validationKey="AutoGenerate,IsolateApps" decryptionKey="AutoGenerate,IsolateApps" validation="3DES" decryption="3DES"/>
  4. Salve o arquivo Web.config.
  5. Reinicie o serviço Microsoft Internet Information Services (IIS). Para fazer isso, execute o seguinte comando em um prompt de comando:
    iisreset
importante Teoricamente, o algoritmo 3DES é menos seguro do que o algoritmo AES (Rijndael). Recomendamos que você use o algoritmo AES sempre que possível para ajudar a proteger seu sistema.

Mais Informações

Etapas para reproduzir o problema

Aviso Podem ocorrer sérios problemas se você modificar o registro incorretamente usando o Editor do registro ou usando outro método. Esses problemas podem exigir que você reinstalar o sistema operacional. A Microsoft não garante que esses problemas possam ser solucionados. Modificar o registro por sua própria conta e risco.

Antes de você pode reproduzir esse problema, você deve definir
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
subchave do Registro como 1 para ativar a diretiva de algoritmos compatíveis com FIPS.

Siga estas etapas e feche o Editor do Registro:
  1. Clique em Iniciar , clique em Executar , digite regedit e, em seguida, clique em OK .
  2. Localize e, em seguida, clique na seguinte chave no Registro:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
  3. No menu Editar , clique em Modificar .
  4. Digite 1 e, em seguida, pressione ENTER.
Observação Reinicie o computador para a nova configuração tenha efeito.

Para reproduzir o problema, execute essas etapas:
  1. No Visual Studio 2005, clique em novo Site no menu arquivo , clique em ASP.NET Web Site em modelos , tipo DriveLetter: \ Path \KB911722 no local de caixa e, em seguida, clique em OK .
  2. No Solution Explorer, clique com o botão direito do mouse em default.aspx e, em seguida, clique em Abrir .
  3. Substitua o código existente com o seguinte code.
    <%@ 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. No menu Debug , clique em Iniciar a depuração .
Você receber a mensagem de erro mencionada na seção "Sintomas".

Para obter mais informações sobre os efeitos de ativar o "criptografia de sistema: usar FIPS compatível com algoritmos para criptografia, hash e assinatura" configuração de segurança no Windows XP e em versões posteriores do Windows XP, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
811833Os efeitos de ativar o "criptografia de sistema: usar FIPS compatível com algoritmos para criptografia, hash e assinatura" configuração de segurança no Windows XP e versões posteriores

Propriedades

ID do artigo: 911722 - Última revisão: sexta-feira, 4 de janeiro de 2008 - Revisão: 3.2
A informação contida neste artigo aplica-se a:
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.1
Palavras-chave: 
kbmt kbtshoot kbprb KB911722 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 911722

Submeter comentários

 

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