MachineKeySection.CompatibilityMode Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft einen Wert ab, der angibt, ob aktualisierte Verschlüsselungsmethoden für den Ansichtszustand verwendet werden, die nach .NET Framework 2.0 Service Pack 1 eingeführt wurden, oder legt diesen Wert fest.
public:
property System::Web::Configuration::MachineKeyCompatibilityMode CompatibilityMode { System::Web::Configuration::MachineKeyCompatibilityMode get(); void set(System::Web::Configuration::MachineKeyCompatibilityMode value); };
[System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=System.Web.Configuration.MachineKeyCompatibilityMode.Framework20SP1)]
public System.Web.Configuration.MachineKeyCompatibilityMode CompatibilityMode { get; set; }
[<System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=System.Web.Configuration.MachineKeyCompatibilityMode.Framework20SP1)>]
member this.CompatibilityMode : System.Web.Configuration.MachineKeyCompatibilityMode with get, set
Public Property CompatibilityMode As MachineKeyCompatibilityMode
Eigenschaftswert
Ein Wert, der angibt, ob Verschlüsselungsmethoden, die nach dem .NET Framework 2.0 SP1-Release eingeführt wurden, verwendet werden.
- Attribute
Hinweise
Die aktualisierten Verschlüsselungsmethoden in höheren Versionen von .NET Framework verringern das Risiko, dass ein Angreifer den Wert erfolgreich zurückentwickeln DecryptionKey
kann. Die älteren Verschlüsselungsmethoden sind verfügbar, um die Abwärtskompatibilität zu gewährleisten.
Auf allen Servern in einer Webfarm sollte die CompatibilityMode Eigenschaft auf denselben Wert festgelegt sein. Wenn der Server, der ein Formularauthentifizierungsticket liest, eine andere CompatibilityMode Einstellung aufweist als der Server, der das Ticket erstellt hat, wird das Ticket nicht erkannt.
Die folgenden Werte können für die CompatibilityMode -Eigenschaft angegeben werden:
Framework20SP1
. Dieser Wert gibt an, dass ASP.NET Verschlüsselungsmethoden verwendet, die in Versionen von ASP.NET vor 2.0 SP2 verfügbar waren. Verwenden Sie diesen Wert für alle Server in einer Webfarm, wenn ein Server eine Version von .NET Framework vor 2.0 SP2 aufweist. Dies ist der Standardwert, es sei denn, die Anwendung Web.config Datei hat dastargetFramework
Attribut deshttpRuntime
Elements auf "4.5" festgelegt.Framework20SP2
. Dieser Wert gibt an, dass ASP.NET aktualisierte Verschlüsselungsmethoden verwendet, die in .NET Framework 2.0 SP2 eingeführt wurden. Verwenden Sie diesen Wert für alle Server in einer Webfarm, wenn alle Server über .NET Framework 2.0 SP2 oder höher verfügen, aber mindestens einer nicht über .NET Framework 4.5 verfügt.Framework45
. Kryptografische Verbesserungen für ASP.NET 4.5 sind in Kraft. Dies ist der Standardwert, wenn die Anwendung Web.config Datei dastargetFramework
Attribut deshttpRuntime
Elements auf "4.5" festgelegt hat.
Wenn diese Eigenschaft auf Framework45
festgelegt ist, gelten die folgenden Einschränkungen:
Wenn die DataProtectorType-Eigenschaft über einen Wert verfügt, muss die ApplicationName-Eigenschaft auch einen Wert haben. Die DataProtector -Klasse schreibt vor, dass ein nicht leerer Anwendungsname angegeben wird.
Das Validation Attribut muss ein tatsächlicher Validierungsalgorithmus (z. B. MD5, SHA1, HMACSHA256, HMACSHA384, HMACSHA512) oder ein benutzerdefinierter Algorithmus sein, der den KeyedHashAlgorithm Typ unterklassiert. Die Werte AES und 3DES sind verboten.
Das Framework erzeugt keine nur signierten Nutzlasten. Tickets für die Formularauthentifizierung werden immer verschlüsselt und signiert, unabhängig davon, wie das
protection
Attribut desforms
Elements in der Web.config-Datei festgelegt wird. Der Ansichtsstatus wird immer verschlüsselt und signiert, wenn entwederEnableViewStateMac
oderRequireViewStateEncryption
für eine bestimmte Seite festgelegt ist.
Aufgrund des Sicherheitsupdates, das im Microsoft Security Bulletin MS10-070 beschrieben wird, ist das Standardverschlüsselungsverhalten für die Framework20SP1
Einstellungen und Framework20SP2
identisch. Es wird nicht empfohlen, das Standardverhalten zu ändern, aber wenn Sie dies tun möchten, finden Sie weitere Informationen unter Konfigurieren des Legacyverschlüsselungsmodus in ASP.NET.