MachineKeyValidation Enumeración

Definición

Especifica el algoritmo hash que ASP.NET utiliza para la autenticación de formularios y para validar los datos del estado de vista y para la identificación del estado de sesión fuera de proceso.

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

Campos

AES 3

Especifica que ASP.NET usa el algoritmo de AES cifrado. Elija esta opción si quiere cifrar el estado de vista en la aplicación web.

Si elige esta opción, la propiedad DecryptionKey se usará para el cifrado y descifrado, y el algoritmo hash HMACSHA1 se usará con la propiedad ValidationKey para la validación.

Custom 7

Especifica que ASP.NET utiliza un algoritmo hash personalizado. El algoritmo hash personalizado se puede implementar en cualquier clase que derive de KeyedHashAlgorithm.

Normalmente, el algoritmo personalizado se especifica mediante declaración en el validation atributo del elemento machineKey , con el formato alg:`*algorithm_name*. Para obtener información sobre cómo especificar un algoritmo personalizado mediante código, vea la propiedad ValidationAlgorithm.

HMACSHA256 4

Especifica que ASP.NET utiliza el algoritmo hash HMACSHA256, un algoritmo hash SHA2 que genera un código hash de 256 bits. Este es el valor predeterminado.

HMACSHA384 5

Especifica que ASP.NET utiliza el algoritmo hash HMACSHA384, un algoritmo hash SHA2 que genera un código hash de 384 bits. Esta opción está disponible para aplicaciones que requieren mayor seguridad que la proporcionada por el algoritmo HMACSHA256.

HMACSHA512 6

Especifica que ASP.NET utiliza el algoritmo hash HMACSHA512, un algoritmo hash SHA2 que genera un código hash de 512 bits. Esta opción está disponible para aplicaciones que requieren mayor seguridad que la proporcionada por el algoritmo >HMACSHA384.

MD5 0

Especifica que ASP.NET utiliza el algoritmo hash Message Digest 5 (MD5), un algoritmo hash que genera un valor hash de 128 bits. Se trata de un valor heredado que solo se debe seleccionar si es necesaria la compatibilidad con versiones anteriores de ASP.NET.

SHA1 1

Especifica que ASP.NET utiliza el algoritmo hash HMACSHA1, un algoritmo hash que genera un valor hash de 160 bits. Se trata de un valor heredado que solo se debe seleccionar si es necesaria la compatibilidad con versiones anteriores de ASP.NET.

TripleDES 2

Especifica que ASP.NET utiliza el algoritmo de cifrado TripleDES (3DES), un algoritmo de cifrado que solo se usa si se especifica que el estado de vista está cifrado. Se trata de un valor heredado que solo se debe seleccionar si es necesaria la compatibilidad con versiones anteriores de ASP.NET.

Ejemplos

En el ejemplo de código siguiente se muestra cómo usar la MachineKeyValidation enumeración . En el ejemplo, configSection es una instancia de MachineKeySection. Este ejemplo de código es parte de un ejemplo mayor proporcionado para la clase MachineKeySection.

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

Comentarios

ASP.NET usa un código de autenticación de mensajes basado en hash (HMAC) para ayudar a detectar si se han alterado los datos que se usan para la autenticación de formularios o el estado de vista. El HMAC se genera cuando se crea el contenido del estado de vista y el HMAC se comprueba en las solicitudes posteriores. El HMAC ayuda a ASP.NET determinar si alguien ha cambiado los datos que se envían entre el servidor y el cliente, pero cualquiera puede leer los datos a medida que viaja a través de Internet a menos que también esté cifrado. De forma predeterminada, el estado de vista se valida pero no está cifrado. Para obtener más información, vea ViewStateEncryptionMode y RegisterRequiresViewStateEncryption.

La MachineKeyValidation enumeración permite especificar el algoritmo que ASP.NET usa para crear el HMAC. El valor predeterminado es HMACSHA256. ASP.NET usa el valor de la ValidationKey propiedad con el algoritmo seleccionado para generar el HMAC.

Se aplica a

Consulte también