Möglicherweise wird eine Fehlermeldung angezeigt, wenn Sie ASP.NET-Webseiten, die ViewState zugreifen nach upgrade von ASP.NET 1.1 zu ASP.NET 2.0 aktiviert haben

SPRACHE AUSWÄHLEN SPRACHE AUSWÄHLEN
Artikel-ID: 911722 - Produkte anzeigen, auf die sich dieser Artikel bezieht
wichtig Dieser Artikel enthält Informationen zum Ändern der Registrierung. Stellen Sie sicher, dass Sie die Registrierung sichern bevor Sie Sie ändern. Stellen Sie sicher, dass Sie die Registrierung wiederherstellen kennen, wenn ein Problem auftritt. Weitere Informationen zum Sichern, Wiederherstellen und Bearbeiten der Registrierung finden Sie im folgenden Artikel der Microsoft Knowledge Base:
256986Beschreibung der Microsoft Windows-Registrierung
Alles erweitern | Alles schließen

Auf dieser Seite

Problembeschreibung

Nach der Aktualisierung von Microsoft ASP.NET 1.1 auf Microsoft ASP.NET 2.0 funktionieren einige ASP.NET-basierte Anwendungen möglicherweise nicht korrekt. Wenn Sie ASP.NET-Webseiten, die ViewState aktiviert haben zugreifen, möglicherweise darüber hinaus die folgenden Fehlermeldung angezeigt:
[InvalidOperationException: Diese Implementierung ist nicht Teil der Windows Platform FIPS-validierten kryptografischen Algorithmen.]
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 [] Modifizierer, Int32, Int32 & starten Länge) +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
--------------------------------------------------------------------------------
Versionsinformationen: Microsoft .NET Framework-Version:2.0.50606.0; ASP.NET Version: 2.0.50606.0

Ursache

Dieses Problem tritt auf, wenn folgende Bedingungen erfüllt sind:
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
    Unterschlüssel der Registrierung auf 1 festgelegt.
  • ASP.NET 2.0 verwendet die RijndaelManaged-Implementierung des AES-Algorithmus, wenn er Ansichtszustandsdaten verarbeitet. Die ReindaelManaged-Implementierung wurde nicht vom National Institute of Standards and Technology (NIST) als kompatibel mit dem Standard (FIPS) zertifiziert wurde. Der AES-Algorithmus ist daher nicht Teil der Windows Platform FIPS-validierten kryptografischen Algorithmen.

Abhilfe

wichtig Diese Schritte möglicherweise Ihr Sicherheitsrisiko erhöht. Diese Schritte möglicherweise auch den Computer oder das Netzwerk möglicherweise anfälliger für Angriffe durch böswillige Benutzer oder gefährlicher Software wie Viren vornehmen. Wir empfehlen den Prozess, den dieser Artikel, beschreibt damit Programme wie entworfen werden, oder um spezielle Programmfunktionen einzusetzen. Bevor Sie diese Änderungen vornehmen, empfiehlt Microsoft, dass Sie die Risiken abzuschätzen, mit der Implementierung dieser Prozess in Ihrer speziellen Umgebung. Wenn Sie diesen Prozess zu implementieren, sollten Maßnahmen Sie entsprechende treffen, um das System zu schützen. Es wird empfohlen, dass dieser Prozess zu, verwenden nur, wenn dieser Vorgang wirklich erforderlich ist.

Ändern Sie um dieses Problem zu umgehen, die Konfiguration in der Datei Web.config auf Anwendungsebene. Geben Sie an, verwendet ASP.NET den Triple Data Encryption Standard (3DES)-Algorithmus Ansichtszustandsdaten zu verarbeiten. Gehen Sie hierzu folgendermaßen vor:
  1. In einem Text-Editor wie z. B. Editor öffnen der Datei Web.config auf Anwendungsebene.
  2. Suchen Sie in der Datei Web.config der <system.web> Abschnitt.
  3. Fügen Sie den folgenden <machinekey> Abschnitt in der <system.web> Abschnitt:
    <machineKey validationKey="AutoGenerate,IsolateApps" decryptionKey="AutoGenerate,IsolateApps" validation="3DES" decryption="3DES"/>
  4. Speichern Sie die Datei Web.config.
  5. Starten Sie den Dienst Internetinformationsdienste (IIS) neu. Führen Sie hierzu den folgenden Befehl an einer Eingabeaufforderung ein:
    iisreset
wichtig Der 3DES-Algorithmus ist theoretisch weniger sicher als der AES (Rijndael)-Algorithmus. Es wird empfohlen, dass AES-Algorithmus schützen möglichst Ihr System verwenden.

Weitere Informationen

Schritte zum Reproduzieren des Problems

Warnung Schwerwiegende Probleme können auftreten, wenn Sie die Registrierung falsch mithilfe des Registrierungs-Editors oder mithilfe einer anderen Methode ändern. Diese Probleme erfordern möglicherweise eine das Betriebssystem neu installieren. Microsoft kann nicht garantieren, dass diese Probleme gelöst werden können. Ändern Sie die Registrierung auf eigene Gefahr.

Bevor Sie dieses Problem reproduzieren können, müssen Sie
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
festlegen Registrierungsunterschlüssels auf 1, um die FIPS-konforme Algorithmen Richtlinie zu aktivieren.

Führen Sie folgende Schritte aus, und beenden Sie anschließend den Registrierungseditor:
  1. Klicken Sie auf Start , klicken Sie auf Ausführen , geben Sie regedit ein und klicken Sie dann auf OK .
  2. Suchen Sie und klicken Sie auf den folgenden Schlüssel in der Registrierung:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa\fipsalgorithmpolicy
  3. Klicken Sie im Menü Bearbeiten auf Ändern .
  4. Geben Sie 1 ein, und drücken Sie anschließend die [EINGABETASTE].
Hinweis: Sie müssen den Computer, damit die neue Einstellung wirksam neu starten.

Gehen Sie folgendermaßen vor, um das Problem zu reproduzieren:
  1. In Visual Studio 2005, klicken Sie auf neue Website im Menü Datei , klicken Sie unter Vorlagen Typ auf ASP.NET-Website DriveLetter: \ Path \KB911722 im Feld Speicherort ein, und klicken Sie dann auf OK .
  2. Klicken Sie in Projektmappen-Explorer mit der rechten Maustaste auf default.aspx und klicken Sie dann auf Öffnen .
  3. Ersetzen Sie den vorhandenen Code durch folgenden 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. Klicken Sie im Debuggen auf Debuggen starten .
Sie erhalten die Fehlermeldung, das im Abschnitt "Problembeschreibung" genannt wird.

Weitere Informationen über die Auswirkungen der Aktivierung der "Systemkryptografie: FIPS-konformen Algorithmus für Verschlüsselung, hashing und Signatur" Sicherheitseinstellung in Windows XP und späteren Versionen von Windows XP finden Sie im folgenden Artikel der Microsoft Knowledge Base:
811833Die Auswirkungen der Aktivierung der "Systemkryptografie: FIPS-konformen Algorithmus für Verschlüsselung, hashing und Signatur" Sicherheitseinstellung in Windows XP und späteren Versionen

Eigenschaften

Artikel-ID: 911722 - Geändert am: Freitag, 4. Januar 2008 - Version: 3.2
Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft ASP.NET 2.0
  • Microsoft ASP.NET 1.1
Keywords: 
kbmt kbtshoot kbprb KB911722 KbMtde
Maschinell übersetzter Artikel
Wichtig: Dieser Artikel wurde maschinell und nicht von einem Menschen übersetzt. Die Microsoft Knowledge Base ist sehr umfangreich und ihre Inhalte werden ständig ergänzt beziehungsweise überarbeitet. Um Ihnen dennoch alle Inhalte auf Deutsch anbieten zu können, werden viele Artikel nicht von Menschen, sondern von Übersetzungsprogrammen übersetzt, die kontinuierlich optimiert werden. Doch noch sind maschinell übersetzte Texte in der Regel nicht perfekt, insbesondere hinsichtlich Grammatik und des Einsatzes von Fremdwörtern sowie Fachbegriffen. Microsoft übernimmt keine Gewähr für die sprachliche Qualität oder die technische Richtigkeit der Übersetzungen und ist nicht für Probleme haftbar, die direkt oder indirekt durch Übersetzungsfehler oder die Verwendung der übersetzten Inhalte durch Kunden entstehen könnten.
Den englischen Originalartikel können Sie über folgenden Link abrufen: 911722
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.

Ihr Feedback an uns

 

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