MachineKeyValidation Перечисление

Определение

Задает алгоритм хэширования, который используется в ASP.NET для проверки подлинности форм и проверки данных состояния просмотра, а также для идентификации состояния сеанса вне процесса.Specifies the hashing algorithm that ASP.NET uses for forms authentication and for validating view state data, and for out-of-process session state identification.

public enum class MachineKeyValidation
public enum MachineKeyValidation
type MachineKeyValidation = 
Public Enum MachineKeyValidation
Наследование
MachineKeyValidation

Поля

AES 3

Указывает, что ASP.NET использует AES алгоритм шифрования.Specifies that ASP.NET uses the AES encryption algorithm. Выберите этот параметр, если хотите зашифровать состояние просмотра в веб-приложении.Choose this option if you want to encrypt view state in your Web application.

Если выбран этот параметр, свойство DecryptionKey будет использоваться для шифрования и расшифровки, а хэш-алгоритм HMACSHA1 будет использоваться со свойством ValidationKeyдля проверки.If you choose this option, the DecryptionKey property will be used for encryption and decryption, and the HMACSHA1 hash algorithm will be used with the ValidationKey property for validation.

Custom 7

Указывает, что в ASP.NET используется пользовательский алгоритм хэширования.Specifies that ASP.NET uses a custom hashing algorithm. Пользовательский алгоритм хэширования можно реализовать в любом классе, производном от KeyedHashAlgorithm.The custom hashing algorithm can be implemented in any class that derives from KeyedHashAlgorithm.

Пользовательский алгоритм обычно задается декларативно в атрибуте validation элемента machineKey в формате alg:\`*algorithm_name*.The custom algorithm is typically specified declaratively in the validation attribute of the machineKey element, in the format alg:\`*algorithm_name*. Сведения о том, как указать пользовательский алгоритм в коде, см. в разделе о свойстве ValidationAlgorithm.For information about how to specify a custom algorithm in code, see the ValidationAlgorithm property.

HMACSHA256 4

Указывает, что ASP.NET использует алгоритм хэширования HMACSHA256, который является алгоритмом хэширования SHA2, создающим 256-разрядный хэш-код.Specifies that ASP.NET uses the HMACSHA256 hashing algorithm, which is an SHA2 hashing algorithm that generates a 256-bit hash code. Это значение по умолчанию.This is the default value.

HMACSHA384 5

Указывает, что ASP.NET использует алгоритм хэширования HMACSHA384, который является алгоритмом хэширования SHA2, создающим 384-разрядный хэш-код.Specifies that ASP.NET uses the HMACSHA384 hashing algorithm, which is an SHA2 hashing algorithm that generates a 384-bit hash code. Этот параметр доступен для приложений, требующих более высокий уровень безопасности, чем предоставляет алгоритм HMACSHA256.This option is available for applications that require stronger security than provided by the HMACSHA256 algorithm..

HMACSHA512 6

Указывает, что ASP.NET использует алгоритм хэширования HMACSHA512, который является алгоритмом хэширования SHA2, создающим 512-разрядный хэш-код.Specifies that ASP.NET uses the HMACSHA512 hashing algorithm, which is an SHA2 hashing algorithm that generates a 512-bit hash code. Этот параметр доступен для приложений, требующих более высокий уровень безопасности, чем предоставляет алгоритм >HMACSHA384.This option is available for applications that require stronger security than provided by the >HMACSHA384 algorithm.

MD5 0

Указывает, что ASP.NET использует алгоритм хэширования Message Digest 5 (MD5), который является алгоритмом хэширования, создающим 128-разрядное хэш-значение.Specifies that ASP.NET uses the Message Digest 5 (MD5) hashing algorithm, which is a hashing algorithm that generates a 128-bit hash value. Это устаревшее значение, которое следует устанавливать только в случаях, когда требуется совместимость с более ранними версиями ASP.NET.This is a legacy value that should be selected only if compatibility with earlier versions of ASP.NET is required.

SHA1 1

Указывает, что ASP.NET использует алгоритм хэширования HMACSHA1, который является алгоритмом хэширования, создающим 160-разрядное хэш-значение.Specifies that ASP.NET uses the HMACSHA1 hash algorithm, which is a hashing algorithm that generates a 160-bit hash value. Это устаревшее значение, которое следует устанавливать только в случаях, когда требуется совместимость с более ранними версиями ASP.NET.This is a legacy value that should be selected only if compatibility with earlier versions of ASP.NET is required.

TripleDES 2

Указывает, что ASP.NET использует алгоритм шифрования TripleDES (3DES), который является алгоритмом шифрования, используемым только в том случае, если вы указываете, что состояние просмотра зашифровано.Specifies that ASP.NET uses the TripleDES (3DES) encryption algorithm, which is an encryption algorithm that is used only if you specify that view state is encrypted. Это устаревшее значение, которое следует устанавливать, только если требуется совместимость с более ранними версиями ASP.NET.This is a legacy value that should be selected only if compatibility with earlier versions of ASP.NET is required..

Примеры

В следующем примере кода показано, как использовать MachineKeyValidation перечисление.The following code example shows how to use the MachineKeyValidation enumeration. В примере configSection является экземпляром MachineKeySection .In the example, configSection is an instance of MachineKeySection. Этот пример кода является частью большого примера, приведенного для MachineKeySection класса.This code example is part of a larger example provided for the MachineKeySection class.

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

Комментарии

ASP.NET использует код проверки подлинности сообщения на основе хэша (HMAC), чтобы определить, были ли данные, используемые для проверки подлинности форм или состояния представления, были изменены.ASP.NET uses a hash-based message authentication code (HMAC) to help detect whether data that is used for forms authentication or view state has been tampered with. Код HMAC создается при создании содержимого состояния представления, а код HMAC проверяется в последующих запросах.The HMAC is generated when view state content is created, and the HMAC is checked on subsequent requests. HMAC помогает ASP.NET определить, изменил ли кто-либо данные, передаваемые между сервером и клиентом, но данные могут быть прочитаны любым лицом, когда он проходит через Интернет, если он не зашифрован.The HMAC helps ASP.NET determine whether someone has changed data that is sent between the server and the client, but the data can be read by anyone as it travels through the Internet unless it is also encrypted. По умолчанию состояние представления проверяется, но не шифруется.By default, view state is validated but not encrypted. Дополнительные сведения см. в разделах ViewStateEncryptionMode и RegisterRequiresViewStateEncryption.For more information, see ViewStateEncryptionMode and RegisterRequiresViewStateEncryption.

MachineKeyValidationПеречисление позволяет указать алгоритм, который ASP.NET использует для создания HMAC.The MachineKeyValidation enumeration lets you specify the algorithm that ASP.NET uses to create the HMAC. Значение по умолчанию — HMACSHA256.The default value is HMACSHA256. ASP.NET использует значение ValidationKey свойства с выбранным алгоритмом для создания HMAC.ASP.NET uses the value of the ValidationKey property with the selected algorithm to generate the HMAC.

Применяется к

См. также раздел