MachineKeyValidation 枚举
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
指定 ASP.NET 用于 Forms 身份验证和验证视图状态数据,以及进程外会话状态标识的哈希算法。
public enum class MachineKeyValidation
public enum MachineKeyValidation
type MachineKeyValidation =
Public Enum MachineKeyValidation
- 继承
字段
AES | 3 | 指定 ASP.NET 使用 如果选择此选项,则 DecryptionKey 属性将用于加密和解密, |
Custom | 7 | 指明 ASP.NET 使用自定义的哈希算法。 自定义哈希算法可以在派生自 KeyedHashAlgorithm 的任何类中实现。 自定义算法通常在 machineKey 元素的 属性中 |
HMACSHA256 | 4 | 指定 ASP.NET 使用 |
HMACSHA384 | 5 | 指定 ASP.NET 使用 |
HMACSHA512 | 6 | 指定 ASP.NET 使用 |
MD5 | 0 | 指定 ASP.NET 使用 Message Digest 5 ( |
SHA1 | 1 | 指定 ASP.NET 使用 |
TripleDES | 2 | 指定 ASP.NET 使用 TripleDES ( |
示例
下面的代码示例演示如何使用 MachineKeyValidation 枚举。 在此示例中, configSection
是 的 MachineKeySection实例。 此代码示例是为 MachineKeySection 类提供的一个更大示例的一部分。
// Set Validation property.
configSection.Validation = MachineKeyValidation.HMACSHA256;
' Set Validation value.
configSection.Validation = MachineKeyValidation.HMACSHA256
注解
ASP.NET 使用基于哈希的消息身份验证代码 (HMAC) 来帮助检测用于表单身份验证或视图状态的数据是否已被篡改。 HMAC 是在创建视图状态内容时生成的,并在后续请求中检查 HMAC。 HMAC 可帮助 ASP.NET 确定某人是否更改了在服务器和客户端之间发送的数据,但数据在通过 Internet 传输时任何人都可以读取,除非数据也已加密。 默认情况下,视图状态已验证,但未加密。 有关详细信息,请参阅 ViewStateEncryptionMode 和 RegisterRequiresViewStateEncryption。
枚举 MachineKeyValidation
允许指定 ASP.NET 用于创建 HMAC 的算法。 默认值是 HMACSHA256
。 ASP.NET 使用属性的值 ValidationKey 和所选算法来生成 HMAC。