MachineKeyValidation Enumeration

Definition

Gibt den Hashalgorithmus an, den ASP.NET für die Formularauthentifizierung und zum Überprüfen von Anzeigezustandsdaten sowie zur Überprüfung der Kennzeichnung des prozessexternen Sitzungszustands verwendet.

public enum class MachineKeyValidation
public enum MachineKeyValidation
type MachineKeyValidation = 
Public Enum MachineKeyValidation
Vererbung
MachineKeyValidation

Felder

AES 3

Gibt an, dass ASP.NET den AES Verschlüsselungsalgorithmus verwendet. Verwenden Sie diese Option, wenn Sie den Ansichtszustand in Ihrer Webanwendung verschlüsseln möchten.

In diesem Fall wird die DecryptionKey-Eigenschaft für die Ver- und Entschlüsselung verwendet. Der HMACSHA1-Hashalgorithmus wird außerdem zusammen mit der ValidationKey-Eigenschaft zur Validierung verwendet.

Custom 7

Gibt an, dass ASP.NET einen benutzerdefinierten Hashalgorithmus verwendet. Dieser kann in jeder Klasse implementiert werden, die von KeyedHashAlgorithm erbt.

Der benutzerdefinierte Algorithmus wird normalerweise deklarativ im validation-Attribut des machineKey-Elements angegeben, und zwar im Format alg:`*Algorithmusbezeichung*. Weitere Informationen zum Festlegen eines benutzerdefinierten Algorithmus im Code finden Sie im Artikel zur ValidationAlgorithm-Eigenschaft.

HMACSHA256 4

Gibt an, dass ASP.NET den HMACSHA256-Hashalgorithmus verwendet. Dabei handelt es sich um einen SHA-2-Hashalgorithmus, der einen 256-Bit-Hashcode generiert. Dies ist der Standardwert.

HMACSHA384 5

Gibt an, dass ASP.NET den HMACSHA384-Hashalgorithmus verwendet. Dabei handelt es sich um einen SHA-2-Hashalgorithmus, der einen 384-Bit-Hashcode generiert. Diese Option steht für Anwendungen bereit, deren erhöhte Sicherheitsanforderungen nicht durch den HMACSHA256-Algorithmus erfüllt werden.

HMACSHA512 6

Gibt an, dass ASP.NET den HMACSHA512-Hashalgorithmus verwendet. Dabei handelt es sich um einen SHA-2-Hashalgorithmus, der einen 512-Bit-Hashcode generiert. Diese Option steht für Anwendungen bereit, deren erhöhte Sicherheitsanforderungen nicht durch den >HMACSHA384-Algorithmus erfüllt werden.

MD5 0

Gibt an, dass ASP.NET den Hashalgorithmus Message Digest 5 (MD5) verwendet. Dabei handelt es sich um einen Hashalgorithmus, der einen 128-Bit-Hashcode generiert. Dieser Legacywert sollte nur verwendet werden, wenn Kompatibilität mit früheren Version von ASP.NET erforderlich ist.

SHA1 1

Gibt an, dass ASP.NET den HMACSHA1-Hashalgorithmus verwendet. Dabei handelt es sich um einen Hashalgorithmus, der einen 160-Bit-Hashwert generiert. Dieser Legacywert sollte nur verwendet werden, wenn Kompatibilität mit früheren Version von ASP.NET erforderlich ist.

TripleDES 2

Gibt an, dass ASP.NET den Verschlüsselungsalgorithmus Triple DES (3DES) verwendet. Dieser wird nur verwendet, wenn Sie festlegen, dass der Ansichtszustand verschlüsselt wird. Dieser Legacywert sollte nur verwendet werden, wenn Kompatibilität mit früheren Version von ASP.NET erforderlich ist.

Beispiele

Im folgenden Codebeispiel wird gezeigt, wie sie die MachineKeyValidation Enumeration verwenden. Im Beispiel configSection ist eine Instanz von MachineKeySection. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die MachineKeySection Klasse bereitgestellt wird.

// Set Validation property.
configSection.Validation = MachineKeyValidation.HMACSHA256;
' Set Validation value.
configSection.Validation = MachineKeyValidation.HMACSHA256

Hinweise

ASP.NET verwendet einen Hash-basierten Nachrichtenauthentifizierungscode (HMAC), um zu erkennen, ob Daten, die für die Formularauthentifizierung oder den Ansichtsstatus verwendet werden, manipuliert wurden. Der HMAC wird generiert, wenn der Ansichtsstatusinhalt erstellt wird, und der HMAC wird auf nachfolgende Anforderungen überprüft. Der HMAC hilft ASP.NET zu bestimmen, ob jemand Daten geändert hat, die zwischen dem Server und dem Client gesendet werden, aber die Daten können von jedem gelesen werden, da es über das Internet reist, es sei denn, es wird auch verschlüsselt. Standardmäßig wird der Ansichtsstatus überprüft, aber nicht verschlüsselt. Weitere Informationen finden Sie unter ViewStateEncryptionMode und RegisterRequiresViewStateEncryption.

Mit der MachineKeyValidation Aufzählung können Sie den Algorithmus angeben, den ASP.NET zum Erstellen des HMAC verwendet. Der Standardwert ist HMACSHA256. ASP.NET verwendet den Wert der ValidationKey Eigenschaft mit dem ausgewählten Algorithmus, um den HMAC zu generieren.

Gilt für

Siehe auch