Al momento sei offline in attesa che la connessione Internet venga ristabilita

Il contenuto crittografato in ASP.NET non viene decrittografato o causa errori per un sito Web che utilizza cookie persistenti dell'autenticazione basata su form o viene distribuito in una Web farm

Sintomi
Dopo avere applicato l'aggiornamento della protezione MS10-070 in server che gestiscono siti Web Microsoft ASP.NET distribuiti in una Web farm, alcuni server o applicazioni nella Web farm potrebbero presentare uno o più sintomi di seguito indicati:
  • Errore nella decrittografia dei dati
  • Eccezioni nei gestori WebResource o ScriptResource
  • Errori di autenticazione quando si utilizza l'autenticazione basata su form
  • Eccezioni "Viewstate non valido"
  • Eccezioni "Impossibile convalidare i dati" quando si tenta la decrittografia dei dati, ad esempio cookie dell'autenticazione basata su form
  L'errore potrebbe presentarsi come eccezione dell'applicazione quando si accede all'applicazione ASP.NET e nel registro dell'applicazione potrebbero essere registrate informazioni simili alle seguenti. 


Messaggio 1:

System.Web.HttpException : Impossibile convalidare i dati in System.Web.Configuration.MachineKeySection.EncryptOrDecryptData(Boolean fEncrypt, Byte[] buf, Byte[] modifier, Int32 start, Int32 length, IVType ivType, Boolean useValidationSymAlgo, Boolean signData)

Messaggio 2:

Tipo evento: Avviso
Origine evento: ASP.NET 2.0.50727.0
Categoria evento: Evento Web
ID evento: 1309
Data: Data
Ora: Ora
Utente: N/D
Descrizione:
Codice evento: 3005
Messaggio evento: Si è verificata un'eccezione non gestita.
Informazioni sull'eccezione:
Tipo di eccezione: HttpException
Messaggio eccezione: Impossibile convalidare i dati.

Cause
L'aggiornamento della protezione di cui al Bollettino MS10-070 modifica il meccanismo di crittografia predefinito in ASP.NET. Dopo l'installazione dell'aggiornamento della protezione, il nuovo meccanismo predefinito implica l'esecuzione della convalida oltre alla crittografia, anche se è necessaria solo la crittografia. Questo meccanismo predefinito modifica il payload crittografato nei server in cui viene applicato questo aggiornamento. Il payload può includere lo stato della visualizzazione e cookie dell'autenticazione basata su form. Se in una Web farm questo aggiornamento della protezione viene applicato solo in alcuni server, vi sarà una differenza tra i metodi di crittografia e decrittografia nello stesso payload tra un server e l'altro della Web farm e questo diverso meccanismo sarà causa di eccezioni. Questo problema può verificarsi anche se dopo l'applicazione dell'aggiornamento vengono utilizzati cookie persistenti dell'autenticazione basata su form in sistemi prima dell'applicazione dell'aggiornamento della protezione.

I metodi di crittografia e decrittografia, inoltre, sono differenti per versioni del service pack di Microsoft .NET Framework 2.0 differenti. Per tale motivo, in caso di livelli di service pack differenti per .NET Framework in un ambiente Web farm in cui è installato l'aggiornamento della protezione, i payload crittografati saranno differenti e si verificherà un errore di decrittografia simile.

Risoluzione
Accertarsi che si verifichino le seguenti condizioni in tutti i server che gestiscono il contenuto ASP.NET:
  • L'aggiornamento della protezione deve essere installato in tutti i server che gestiscono un sito Web ASP.NET nella Web farm. Se l'aggiornamento della protezione non è installato in alcuni server, installarlo.
  • Se l'aggiornamento della protezione MS10-070 è applicato a tutti i sistemi, tutti i computer che eseguono la stessa versione di .NET Framework 2.0 nella Web farm devono presentare lo stesso livello di service pack. In caso di differenze tra i livelli di service pack nei server, aggiornare tutti i server con l'ultimo service pack e applicare nuovamente tutti gli aggiornamenti della protezione. Per tale motivo, se alcuni server nella Web farm eseguono .NET Framework 2.0 SP1 e altri eseguono .NET Framework 2.0 SP2, tutti i server .NET Framework 2.0 SP1 devono essere aggiornati con .NET Framework 2.0 SP2 prima di applicare l'aggiornamento della protezione a tutti i server nella Web farm.
  • Accertarsi che le applicazioni non utilizzino dati crittografati, ad esempio cookie dell'autenticazione basata su form generati prima dell'applicazione dell'aggiornamento. I dati crittografati precedentemente devono essere aggiornati dopo l'applicazione dell'aggiornamento della protezione.
Per ulteriori informazioni sul rilevamento delle versioni di .NET Framework e per l'installazione dell'aggiornamento della protezione nei server, consultare la sezione "Riferimenti".
Riferimenti
Per ulteriori informazioni sullo stato della visualizzazione di ASP.NET, fare riferimento all'articolo seguente:Per ulteriori informazioni sull'autenticazione basata su form di ASP.NET, fare riferimento all'articolo seguente:Per ulteriori informazioni sui cookie e sui ticket dell'autenticazione basata su form di ASP.NET, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
910443 Informazioni su cookie e ticket dell'autenticazione basata su form
Per ulteriori informazioni sul gestore risorse Web di ASP.NET, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
910442 Utilizzo delle risorse Web in ASP.NET 2.0
viewstate non valido; impossibile convalidare i dati
Proprietà

ID articolo: 2431728 - Ultima revisione: 12/22/2011 09:38:00 - Revisione: 6.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 1.1 Service Pack 1

  • kbprb kbfix kbtshoot kbexpertiseinter kbsurveynew KB2431728
Feedback
ment.createElement('meta');m.name='ms.dqp0';m.content='true';document.getElementsByTagName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?">