Configura os algoritmos e as chaves usadas para criptografia, descriptografia e validação de dados de autenticação de formulários e dados de estado de exibição e para identificação de estado de sessão fora do processo.
Especifica o algoritmo usado para criptografar e descriptografar os dados de autenticação de formulários.
Esse atributo pode ter um dos seguintes valores:
AutoEspecifica que o ASP.NET determina automaticamente qual algoritmo de descriptografia para usar. Este é o valor padrão deste atributo.
AESEspecifica que o ASP.NET usa o AES (Rijndael) o algoritmo para criptografar e descriptografar dados. AESé o algoritmo de padrão e é o que é usado quando o valor desse atributo é Auto. Esse algoritmo é compatível com os Estados Unidos Federal Information Processing Standards (FIPS).
DESEspecifica que o ASP.NET usa o algoritmo padrão de criptografia de dados (DES) para criptografar e descriptografar dados. Esse algoritmo está incluído somente para fins de legado e deve ser usado somente se a compatibilidade com versões anteriores do ASP.NET é necessária.
3DESEspecifica que o ASP.NET usa o TripleDES algoritmo (3DES) para criptografar e descriptografar dados. Esse algoritmo está incluído somente para fins de legado e deve ser usado somente se a compatibilidade com versões anteriores do ASP.NET é necessária.
alg:algorithm_name Especifica que o ASP.NET usa um algoritmo personalizado para criptografar e descriptografar dados. O algoritmo de criptografia deve ser definido em uma classe que deriva de SymmetricAlgorithm. ASP.NET chamadas a SymmetricAlgorithm.Create método e passa o nome do algoritmo que é especificado aqui.
Especifica a chave que é usada para criptografar e descriptografar dados ou o processo pelo qual a chave é gerada. Este atributo é usado para autenticação de formulários criptografia e descriptografia e para o estado de exibição criptografia e descriptografia quando o estado de exibição é criptografado.
Esse atributo pode ter um dos seguintes valores:
AutoGenerate, IsolateAppsEspecifica a chave é gerada automaticamente. Este é o valor padrão. O AutoGenerate modificador Especifica que ASP.NET gera uma chave aleatória e a armazena na autoridade de segurança Local (LSA). O IsolateApps modificador Especifica que ASP.NET gera uma chave criptografada exclusiva para cada aplicativo usando a identificação do aplicativo de cada aplicativo.
valor de chave Especifica uma chave atribuída manualmente. O decryptionKey valor deve ser definido como uma seqüência de caracteres hexadecimais para garantir uma configuração consistente em todos os servidores em um Web farm. A chave deve ser de 64 bits (16 caracteres hexadecimais) tempo para DES 192 bits (48 caracteres hexadecimais) ou criptografia, comprimento de 3DES. Para AES, a chave pode ser de 128 bits (32 caracteres), 192 bits (48 caracteres) ou longo de 256 bits (64 caracteres). A chave mais longa fornece segurança máxima.Chaves aleatórias podem ser geradas usando a RNGCryptoServiceProvider classe. Para obter mais informações, consulte How To: Configure MachineKey no ASP.NET 2.0.
Para obter mais informações, consulte DecryptionKey.
Especifica o algoritmo de hash é usado para validar os dados.
Por padrão, o estado de exibição é transmitido como uma seqüência de codificação base 64. Embora à primeira vista dados codificados são ininteligíveis, a codificação base 64 não fornece segurança porque ele é facilmente decodificado. Se você armazenar dados confidenciais no estado da exibição, você pode especificar que o ASP.NET criptografa os dados de estado de exibição para além de validá-lo. Você pode especificar a criptografia do estado de exibição para todas as páginas do seu aplicativo da Web ou para páginas selecionadas. Para obter informações sobre essa opção, consulte ViewStateEncryptionMode e RegisterRequiresViewStateEncryption().
Se você quiser usar a criptografia do estado de exibição, definir esse atributo para AES. Nesse caso, o valor de decryptionKey será usado para criptografar os dados de estado de exibição e o ASP.NET usará a HMACSHA1 o algoritmo de hash para validação de dados.
Esse atributo pode ter um dos seguintes valores.
AESEspecifica que o ASP.NET usa o AES (Rijndael) o algoritmo de criptografia para criptografar e descriptografar os dados quando o estado de exibição é criptografado. Se esta opção for especificada para o validation atributo, o HMACSHA1 algoritmo é usado para validação.
MD5Especifica que o ASP.NET usa o Message Digest 5 (MD5) algoritmo de hash para validar dados. Esse algoritmo está incluído somente para fins de legado e deve ser usado somente se a compatibilidade com versões anteriores do ASP.NET é necessária.
SHA1Especifica que o ASP.NET usa o HMACSHA1 o algoritmo de hash para validar dados. Este algoritmo só deve ser usado se você precisar definir esse atributo para AES para oferecer suporte à criptografia do estado de exibição. Otherwise, use HMACSHA256, HMACSHA384, or HMACSHA512.
3DESEspecifica que o ASP.NET usa o TripleDES (3DES) algoritmo para criptografar e descriptografar os dados quando o estado de exibição é criptografado. Se esta opção for especificada para o validation atributo, o HMACSHA1 algoritmo é usado para validação. Esse algoritmo está incluído somente para fins de legado e deve ser usado somente se a compatibilidade com versões anteriores do ASP.NET é necessária.
HMACSHA256Especifica que o ASP.NET usa o HMACSHA256 o algoritmo de hash para validar dados. Este é o valor padrão. Esse algoritmo é compatível com a United afirmado Federal Information Processing Standards (FIPS).
HMACSHA384Especifica que o ASP.NET usa o HMACSHA384 o algoritmo de hash para validar dados. Essa opção está disponível para aplicativos que exigem mais segurança do que é fornecida pelo HMACSHA256 algoritmo. Esse algoritmo é compatível com os Estados Unidos Federal Information Processing Standards (FIPS).
HMACSHA512Especifica que o ASP.NET usa o HMACSHA512 o algoritmo de hash para validar dados. Essa opção está disponível para aplicativos que exigem mais segurança do que é fornecida pelo HMACSHA384 algoritmo. Esse algoritmo é compatível com os Estados Unidos Federal Information Processing Standards (FIPS).
alg:algorithm_name Especifica que o ASP.NET usa um algoritmo personalizado. O prefixo "alg:" é seguido pelo nome de uma classe que deriva de KeyedHashAlgorithm. ASP.NET chamadas a Create() método e passa o nome do algoritmo que é especificado aqui.
Especifica a chave que é usada para validar os dados ou o processo pelo qual ele é gerado. O validationKey valor também é usado para gerar a sessão de out-of-process, específicos do aplicativo IDs para garantir que as variáveis de estado de sessão estão isoladas entre sessões.
Esse atributo pode ter um dos seguintes valores:
AutoGenerate, IsolateAppsEspecifica a chave é gerada automaticamente. Este é o valor padrão. O AutoGenerate modificador Especifica que ASP.NET gera uma chave aleatória e a armazena na autoridade de segurança Local LSA. O IsolateApps modificador Especifica que ASP.NET gera uma chave criptografada exclusiva para cada aplicativo usando a identificação do aplicativo de cada aplicativo.
valor de chave Especifica uma chave atribuída manualmente. O validationKey valor deve ser definido como uma seqüência de caracteres hexadecimais para garantir uma configuração consistente em todos os servidores em um Web farm. O comprimento da chave depende do algoritmo de hash usado:
AESrequer uma chave de 256 bits (64 caracteres hexadecimais).
MD5requer uma chave de 128 bits (32 caracteres hexadecimais).
SHA1requer uma chave de 160 bits (40 caracteres hexadecimais).
3DESrequer uma chave de 192 bits (48 caracteres hexadecimais).
HMACSHA256requer uma chave de 256 bits (64 caracteres hexadecimais).
HMACSHA384requer uma chave de 384 bits (96 caracteres hexadecimais).
HMACSHA512requer uma chave de 512 bits (128 caracteres hexadecimais).
Chaves aleatórias podem ser geradas usando a RNGCryptoServiceProvider classe. Para obter mais informações, consulte How To: Configure MachineKey no ASP.NET 2.0. Este tópico não lista o HMACSHA256, HMACSHA384, ou HMACSHA512 algoritmos. No entanto, o processo funciona para esses algoritmos, também, desde que você especificar o comprimento da chave correto.
Para obter mais informações, consulte ValidationKey.
Elementos filho
Nenhum.
Elementos pai
Elemento
Descrição
configuration
Especifica o elemento raiz necessários em cada arquivo de configuração que é usado pelo common language runtime e no.Aplicativos do NET Framework.
system.web
Especifica o elemento raiz para o ASP.Definições de configuração de rede em uma configuração de arquivo e contém elementos de configuração para configurar aplicativos ASP.NET e controlar como os aplicativos se comportam.
Comentários
O exemplo de código a seguir demonstra como definir ambos os validationKey e decryptionKey atributos para AutoGenerate. O isolateApps valor é especificado para gerar chaves exclusivas para cada aplicativo no servidor.
O exemplo de código a seguir demonstra como definir o validationKey atributo e o decryptionKey atributo gerou manualmente valores aleatórios. O validationKey atributo está definido como uma chave de 256 bits longa para o algoritmo de hash HMACSHA256 e o decryptionKey atributo também é definido como uma chave longa 256 bits, a mais longa possível para o AES algoritmo de criptografia. Esses são apenas exemplos e não devem ser usados em seu aplicativo.