MachineKeyValidation Enumeração

Definição

Especifica o algoritmo de hash que o ASP.NET utiliza para autenticação de formulários e validação de dados de estado de visualização, bem como para identificação do estado de sessão fora do processo.

public enum class MachineKeyValidation
public enum MachineKeyValidation
type MachineKeyValidation = 
Public Enum MachineKeyValidation
Herança
MachineKeyValidation

Campos

Name Valor Description
MD5 0

Especifica que ASP.NET utiliza o algoritmo de hash Message Digest 5 (MD5), que é um algoritmo de hash que gera um valor de hash de 128 bits. Este é um valor legado que só deve ser selecionado se for necessária compatibilidade com versões anteriores do ASP.NET.

SHA1 1

Especifica que ASP.NET utiliza o algoritmo de hash HMACSHA1, que é um algoritmo de hash que gera um valor de hash de 160 bits. Este é um valor legado que só deve ser selecionado se for necessária compatibilidade com versões anteriores do ASP.NET.

TripleDES 2

Especifica que ASP.NET utiliza o algoritmo de encriptação TripleDES (3DES), que é um algoritmo de encriptação usado apenas se especificar que o estado da vista está encriptado. Este é um valor legado que só deve ser selecionado se for necessária compatibilidade com versões anteriores do ASP.NET.

AES 3

Especifica que ASP.NET utiliza o algoritmo de encriptação AES. Escolha esta opção se quiser encriptar o estado da vista na sua aplicação Web.

Se escolher esta opção, a DecryptionKey propriedade será usada para encriptação e desencriptação, e o HMACSHA1 algoritmo de hash será usado com essa ValidationKey propriedade para validação.

HMACSHA256 4

Especifica que ASP.NET usa o algoritmo de hash HMACSHA256, que é um algoritmo SHA2 que gera um código de hash de 256 bits. Este é o valor padrão.

HMACSHA384 5

Especifica que ASP.NET utiliza o algoritmo de hash HMACSHA384, que é um algoritmo de hash SHA2 que gera um código de hash de 384 bits. Esta opção está disponível para aplicações que requerem segurança mais forte do que a fornecida pelo HMACSHA256 algoritmo.

HMACSHA512 6

Especifica que ASP.NET utiliza o algoritmo de hash HMACSHA512, que é um algoritmo SHA2 que gera um código de hash de 512 bits. Esta opção está disponível para aplicações que requerem segurança mais forte do que a fornecida pelo >HMACSHA384 algoritmo.

Custom 7

Especifica que o ASP.NET utiliza um algoritmo de hashing personalizado. O algoritmo de hash personalizado pode ser implementado em qualquer classe que derive de KeyedHashAlgorithm.

O algoritmo personalizado é tipicamente especificado declarativamente no validation atributo do elemento machineKey , no formato alg:`*algorithm_name*. Para informações sobre como especificar um algoritmo personalizado em código, consulte a ValidationAlgorithm propriedade.

Exemplos

O seguinte exemplo de código mostra como usar a MachineKeyValidation enumeração. No exemplo, configSection é uma instância de MachineKeySection. Este exemplo de código faz parte de um exemplo maior fornecido para a MachineKeySection classe.

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

Observações

O ASP.NET utiliza um código de autenticação de mensagens baseado em hash (HMAC) para ajudar a detetar se os dados usados para autenticação de formulários ou estado de visualização foram adulterados. O HMAC é gerado quando o conteúdo do estado de visualização é criado, e o HMAC é verificado em pedidos subsequentes. O HMAC ajuda o ASP.NET a determinar se alguém alterou os dados enviados entre o servidor e o cliente, mas os dados podem ser lidos por qualquer pessoa enquanto viajam pela Internet, a menos que também estejam encriptados. Por defeito, o estado de visualização é validado mas não encriptado. Para obter mais informações, consulte ViewStateEncryptionMode e RegisterRequiresViewStateEncryption.

A enumeração MachineKeyValidation permite-lhe especificar o algoritmo que ASP.NET usa para criar o HMAC. O valor predefinido é HMACSHA256. ASP.NET utiliza o valor da propriedade ValidationKey com o algoritmo selecionado para gerar o HMAC.

Aplica-se a

Ver também