Vous pouvez recevoir un message d'erreur lorsque vous accéder aux pages Web ASP.NET qui ont ViewState activé après la mise à niveau de ASP.NET 1.1 vers ASP.NET 2.0

Traductions disponibles Traductions disponibles
Numéro d'article: 911722 - Voir les produits auxquels s'applique cet article
important Cet article contient des informations sur la modification du Registre. Assurez-vous de sauvegarder le Registre avant de le modifier. Vérifiez que vous connaissez comment restaurer le Registre si un problème se produit. Pour plus d'informations sur la façon sauvegarder, restaurer et modifier le Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :
256986 Description du Registre Microsoft Windows
Agrandir tout | Réduire tout

Sommaire

Symptômes

Après la mise à niveau vers Microsoft ASP.NET 2.0 de Microsoft ASP.NET 1.1, certaines applications ASP.NET peut ne pas fonctionner correctement. En outre, lorsque vous accéder aux pages Web ASP.NET qui ont ViewState activé, le message d'erreur suivant peut s'afficher :
[InvalidOperationException : cette implémentation ne fait pas partie des algorithmes cryptographiques FIPS plate-forme Windows validée.]
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 [] modificateur, début int32, int32 & longueur) +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
--------------------------------------------------------------------------------
Informations de version : Microsoft .NET Framework Version:2.0.50606.0 ; version ASP.NET : 2.0.50606.0

Cause

Ce problème se produit lorsque les conditions suivantes sont remplies :
  • Le
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
    sous-clé de Registre est définie sur 1.
  • ASP.NET 2.0 utilise l'implémentation RijndaelManaged de l'algorithme AES lorsqu'il traite les données d'état d'affichage. L'implémentation ReindaelManaged n'a pas été certifiée par du National Institute de Standards and Technology (NIST) comme compatible avec les informations du traitement des norme FIPS (Federal) standard. Par conséquent, l'algorithme AES ne fait pas partie des algorithmes cryptographiques FIPS plate-forme Windows validée.

Contournement

important Ces étapes peuvent augmenter votre vulnérabilité en matière de sécurité. Ces étapes peuvent également rendre l'ordinateur ou le réseau plus vulnérable aux attaques d'utilisateurs malintentionnés ou de logiciels malveillants tels que les virus. Nous vous recommandons du processus qui Cet article décrit pour activer les programmes de fonctionner comme ils sont conçus pour ou pour implémenter les fonctionnalités du programme spécifique. Avant d'effectuer ces modifications, nous vous recommandons d'évaluer les risques associés à l'implémentation de ce processus dans votre environnement particulier. Si vous décidez d'implémenter ce processus, prenez toutes les mesures supplémentaires pour protéger le système. Nous vous recommandons d'utiliser cette procédure uniquement si vous avez vraiment besoin de ce processus.

Pour contourner ce problème, modifiez la configuration dans le fichier Web.config au niveau de l'application. Spécifier ASP.NET utilisant l'algorithme Triple Data Encryption Standard (3DES) pour traiter les données d'état d'affichage. Pour ce faire, procédez comme suit :
  1. Dans un éditeur de texte tel que le bloc-notes, ouvrez le fichier de Web.config au niveau de l'application.
  2. Dans le fichier Web.config, localisez le <system.web>section.
  3. Ajoutez la ligne suivante <machinekey>section à la <system.web>section :
    <machineKey validationKey="AutoGenerate,IsolateApps" decryptionKey="AutoGenerate,IsolateApps" validation="3DES" decryption="3DES"/>
  4. Enregistrez le fichier Web.config.
  5. Redémarrez le service Microsoft Internet Information Services (IIS). Pour ce faire, exécutez la commande suivante à partir d'une invite de commandes :
    iisreset
important En théorie, l'algorithme 3DES est moins sécurisée que l'algorithme AES (Rijndael). Nous vous recommandons d'utiliser l'algorithme AES si possible de sécuriser votre système.

Plus d'informations

Procédure pour reproduire le problème

Avertissement Des problèmes graves peuvent se produire si modification incorrecte du Registre à l'aide de l'Éditeur du Registre ou en utilisant une autre méthode. Ces problèmes peuvent obliger à réinstaller le système d'exploitation. Microsoft ne peut pas garantir que ces problèmes peuvent être résolus. Modifier le Registre à vos risques et périls.

Avant de vous pouvez reproduire ce problème, vous devez définir la
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
sous-clé de Registre 1 pour la stratégie algorithmes compatibles FIPS.

Suivez ces étapes et puis quittez l'Éditeur du Registre :
  1. Cliquez sur Démarrer , cliquez sur Exécuter , tapez regedit et cliquez sur OK .
  2. Recherchez et cliquez ensuite la clé de Registre suivante :
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
  3. Dans le menu Edition , cliquez sur Modifier .
  4. Tapez 1 et puis appuyez sur ENTRÉE.
note Vous devez redémarrer l'ordinateur pour que les nouveaux paramètres prennent effet.

Pour reproduire le problème, procédez comme suit :
  1. Dans Visual Studio 2005, cliquez sur Nouveau site Web dans le menu Fichier , cliquez sur site Web ASP.NET sous modèles , type DriveLetter: \ \KB911722 Path dans l' emplacement de zone, puis cliquez sur OK .
  2. Dans l'Explorateur de solutions, cliquez avec le bouton droit sur default.aspx , puis cliquez sur Ouvrir .
  3. Remplacez le code existant par le 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. Dans le menu Déboguer , cliquez sur Démarrer le débogage .
Vous recevez le message d'erreur qui est mentionné dans la section « Symptômes ».

Pour plus d'informations sur les effets de l'activation de la « cryptographie système : utiliser FIPS algorithmes compatibles pour le cryptage, le hachage et la signature « paramètre de sécurité dans Windows XP et dans les versions ultérieures de Windows XP, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft. :
811833 Les effets de l'activation de la « cryptographie système : utiliser FIPS algorithmes compatibles pour le cryptage, le hachage et la signature « paramètre de sécurité dans Windows XP et versions ultérieures

Propriétés

Numéro d'article: 911722 - Dernière mise à jour: vendredi 4 janvier 2008 - Version: 3.2
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.1
Mots-clés : 
kbmt kbtshoot kbprb KB911722 KbMtfr
Traduction automatique
IMPORTANT : Cet article est issu du système de traduction automatique mis au point par Microsoft (http://support.microsoft.com/gp/mtdetails). Un certain nombre d?articles obtenus par traduction automatique sont en effet mis à votre disposition en complément des articles traduits en langue française par des traducteurs professionnels. Cela vous permet d?avoir accès, dans votre propre langue, à l?ensemble des articles de la base de connaissances rédigés originellement en langue anglaise. Les articles traduits automatiquement ne sont pas toujours parfaits et peuvent comporter des erreurs de vocabulaire, de syntaxe ou de grammaire (probablement semblables aux erreurs que ferait une personne étrangère s?exprimant dans votre langue !). Néanmoins, mis à part ces imperfections, ces articles devraient suffire à vous orienter et à vous aider à résoudre votre problème. Microsoft s?efforce aussi continuellement de faire évoluer son système de traduction automatique.
La version anglaise de cet article est la suivante: 911722
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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