<machineKey>-Element
Konfiguriert Schlüssel, die zur Ver- und Entschlüsselung von Cookie- und Anzeigestatusdaten für die Formularauthentifizierung und zur Überprüfung der Kennzeichnung des prozessexternen Sitzungsstatus verwendet werden. Dieser Abschnitt kann auf Computer-, Site- und Anwendungsebene, nicht jedoch auf Unterverzeichnisebene deklariert werden.
<configuration>
<system.web>
<machineKey>
<machineKeyvalidationKey="AutoGenerate|value[,IsolateApps]" decryptionKey="AutoGenerate|value[,IsolateApps]" validation="SHA1|MD5|3DES"/>
Erforderliche Attribute
Attribut | Option | Beschreibung |
---|---|---|
validationKey | Gibt den Schlüssel für die Gültigkeitsprüfung verschlüsselter Daten an. validationKey wird bei einem enableViewStateMAC-Wert von true verwendet, um einen MAC (Message Authentication Code) zu erstellen, mit dem ein Missbrauch des Anzeigestatus ausgeschlossen wird. Mit validationKey werden außerdem prozessexterne, anwendungsspezifische Sitzungs-IDs generiert, mit denen die Isolierung der Sitzungszustandsvariablen zwischen den Sitzungen gewährleistet wird. | |
AutoGenerate | Gibt an, dass ASP.NET einen zufälligen Schlüssel erstellt und ihn in der lokalen Sicherheitsautorität speichert. Die AutoGenerate-Option ist der Standardwert. Wenn Sie dem Wert validationKey den Modifizierer IsolateApps hinzufügen, generiert ASP.NET unter Verwendung der Anwendungs-ID jeder Anwendung einen eindeutigen verschlüsselten Schlüssel für jede Anwendung. | |
value | Gibt einen manuell zugewiesenen Überprüfungsschlüssel an. Dieser Wert muss manuell eingestellt werden, um die gleichmäßige Konfiguration der Computer in einem Netzwerk (einer Webfarm) sicherzustellen. Die Mindestlänge des Schlüssels beträgt 40 Zeichen (20 Byte), seine maximale Länge 128 Zeichen (64 Byte). Bei Verwendung von Schlüsseln, deren Länge die maximale Schlüssellänge unterschreitet, sollten diese nach dem Zufallsprinzip (z. B. mit Hilfe von RNGCryptoServiceProvider) erstellt werden. Die empfohlene Schlüssellänge beträgt 128 Hexadezimalzeichen. Wenn Sie dem Wert validationKey den Modifizierer IsolateApps hinzufügen, generiert ASP.NET unter Verwendung der Anwendungs-ID jeder Anwendung einen eindeutigen verschlüsselten Schlüssel für jede Anwendung. | |
decryptionKey | Gibt den Schlüssel zum Verschlüsseln von Daten an. decryptionKey wird zur Ver- und Entschlüsselung bei der Formularauthentifizierung und zur Verschlüsselung des Anzeigestatus verwendet, wenn validation den Wert 3DES hat. | |
AutoGenerate | Gibt an, dass ASP.NET einen zufälligen Schlüssel generiert und ihn in der LSA (lokale Sicherheitsautorität) speichert. Die AutoGenerate-Option ist der Standardwert. Wenn Sie dem Wert decryptionKey den Modifizierer IsolateApps hinzufügen, generiert ASP.NET unter Verwendung der Anwendungs-ID jeder Anwendung einen eindeutigen verschlüsselten Schlüssel für jede Anwendung. | |
value | Gibt einen manuell zugewiesenen Schlüssel an. Dieser Wert muss manuell auf eine aus Hexadezimalzeichen bestehende Zeichenfolge eingestellt werden, um die gleichmäßige Konfiguration aller Computer in einer Webfarm sicherzustellen. Bei Verwendung der DES-Verschlüsselung muss dieser Schlüssel 16 Zeichen und bei Verwendung der Triple-DES-Verschlüsselung 48 Zeichen lang sein. Wenn Schlüssel verwendet werden, deren Länge die maximale Schlüssellänge unterschreitet, sollten sie nach dem Zufallsprinzip erstellt werden, z. B. unter Verwendung von RNGCryptoServiceProvider. ASP.NET kann Triple-DES nur auf Computern verwenden, die die 128-Bit-Verschlüsselung unterstützen. Wenn Sie dem Wert decryptionKey den Modifizierer IsolateApps hinzufügen, generiert ASP.NET unter Verwendung der Anwendungs-ID jeder Anwendung einen eindeutigen verschlüsselten Schlüssel für jede Anwendung. | |
validation | Gibt den Typ der für die Datenüberprüfung verwendeten Verschlüsselung an. | |
SHA1 | Gibt an, dass ASP.NET die SHA1-Verschlüsselung verwendet. | |
MD5 | Gibt an, dass ASP.NET die MD5-Verschlüsselung verwendet. | |
3DES | Gibt an, dass ASP.NET die Triple-DES-Verschlüsselung (3DES-Verschlüsselung) verwendet. Bei Auswahl von 3DES wird für die Formularauthentifizierung standardmäßig SHA1 verwendet. Wenn das validation-Attribut auf 3DES festgelegt ist, wird für die Überprüfung des Anzeigestatus die 3DES-Verschlüsselung verwendet. |
Beispiel
Im folgenden Beispiel werden die Schlüssel validationKey und decryptionKey auf AutoGenerate festgelegt. Um für jede Anwendung auf dem Server eindeutige Schlüssel zu generieren, wird die Option isolateApps angegeben.
<machineKey validationKey="AutoGenerate,IsolateApps"
decryptionKey="AutoGenerate,IsolateApps"
validation="SHA1"/>
Anforderungen
Enthalten in: <system.web>
Webplattform: IIS 5.0, IIS 5.1, IIS 6.0
Konfigurationsdatei: Machine.config, Web.config
Konfigurationsabschnittshandler: System.Web.Configuration.MachineKeyConfigHandler