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

Traduzione articoli Traduzione articoli
Identificativo articolo: 2431728 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

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:
Panoramica dello stato della visualizzazione di ASP.NET
Per ulteriori informazioni sull'autenticazione basata su form di ASP.NET, fare riferimento all'articolo seguente:
Panoramica dell'autenticazione basata su form di ASP.NET
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

Proprietà

Identificativo articolo: 2431728 - Ultima modifica: giovedì 22 dicembre 2011 - Revisione: 6.0
Le informazioni in questo articolo si applicano a:
  • 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
Chiavi: 
kbprb kbfix kbtshoot kbexpertiseinter kbsurveynew KB2431728
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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