MachineKeySection.CompatibilityMode Свойство

Определение

Получает или задает значение, указывающее, используются ли обновленные методы шифрования для просмотра состояния, введенные после выпуска платформы .NET Framework версии 2.0 с пакетом обновления 1.Gets or sets a value that specifies whether upgraded encryption methods for view state that were introduced after the .NET Framework version 2.0 Service Pack 1 release are used.

public:
 property System::Web::Configuration::MachineKeyCompatibilityMode CompatibilityMode { System::Web::Configuration::MachineKeyCompatibilityMode get(); void set(System::Web::Configuration::MachineKeyCompatibilityMode value); };
[System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=Mono.Cecil.CustomAttributeArgument)]
public System.Web.Configuration.MachineKeyCompatibilityMode CompatibilityMode { get; set; }
[<System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=Mono.Cecil.CustomAttributeArgument)>]
member this.CompatibilityMode : System.Web.Configuration.MachineKeyCompatibilityMode with get, set
Public Property CompatibilityMode As MachineKeyCompatibilityMode

Значение свойства

MachineKeyCompatibilityMode

Значение, указывающее, используются ли методы шифрования, введенные после выпуска .NET Framework 2.0 с пакетом обновления 1 (SP1).A value that indicates whether encryption methods that were introduced after the .NET Framework 2.0 SP1 release are used.

Атрибуты

Комментарии

Обновленные методы шифрования в более поздних версиях .NET Framework снижают риск успешного реконструирования значения злоумышленником DecryptionKey .The upgraded encryption methods in later versions of the .NET Framework reduce the risk that an attacker can successfully reverse-engineer the DecryptionKey value. Для обеспечения обратной совместимости доступны более старые методы шифрования.The older encryption methods are available in order to maintain backward compatibility.

Для всех серверов в веб-ферме CompatibilityMode свойству должно быть присвоено одинаковое значение.All servers in a Web farm should have the CompatibilityMode property set to the same value. Если сервер, считывающий билет проверки подлинности форм, имеет другой CompatibilityMode параметр, отличный от сервера, создавшего билет, билет не будет распознан.If the server that reads a forms authentication ticket has a different CompatibilityMode setting than the server that created the ticket, the ticket won't be recognized.

Для свойства можно задать следующие значения CompatibilityMode :The following values can be specified for the CompatibilityMode property:

  • Framework20SP1.Framework20SP1. Это значение указывает, что ASP.NET использует методы шифрования, которые были доступны в версиях ASP.NET, предшествующих 2,0 с пакетом обновления 2 (SP2).This value specifies that ASP.NET uses encryption methods that were available in versions of ASP.NET earlier than 2.0 SP2. Используйте это значение для всех серверов в веб-ферме, если на сервере имеется версия .NET Framework более ранней, чем 2,0 с пакетом обновления 2 (SP2).Use this value for all servers in a web farm if any server has a version of the .NET Framework earlier than 2.0 SP2. Это значение по умолчанию, если только файл Web.config приложения не имеет targetFramework атрибута httpRuntime элемента со значением "4,5".This is the default value unless the application Web.config file has the targetFramework attribute of the httpRuntime element set to "4.5".

  • Framework20SP2.Framework20SP2. Это значение указывает, что ASP.NET использует обновленные методы шифрования, появившиеся в .NET Framework 2,0 с пакетом обновления 2 (SP2).This value specifies that ASP.NET uses upgraded encryption methods that were introduced in the .NET Framework 2.0 SP2. Используйте это значение для всех серверов в веб-ферме, если на всех серверах установлен .NET Framework 2,0 с пакетом обновления 2 (SP2) или более поздней версии, но по крайней мере один из них не имеет .NET Framework 4,5.Use this value for all servers in a web farm if all servers have the .NET Framework 2.0 SP2 or later but at least one does not have the .NET Framework 4.5.

  • Framework45.Framework45. Улучшения криптографии для ASP.NET 4,5 вступают в действие.Cryptographic enhancements for ASP.NET 4.5 are in effect. Это значение по умолчанию, если в файле Web.config приложения targetFramework атрибут httpRuntime элемента имеет значение "4,5".This is the default value if the application Web.config file has the targetFramework attribute of the httpRuntime element set to "4.5".

Если для этого свойства задано значение Framework45 , действуют следующие ограничения.When this property is set to Framework45, the following restrictions are in effect:

  • Если свойство DataProtectorType имеет значение, свойство ApplicationName также должно иметь значение.If the DataProtectorType property has a value, the ApplicationName property must also have a value. DataProtectorКласс требует, чтобы было указано непустое имя приложения.The DataProtector class mandates that a non-empty application name be provided.

  • ValidationАтрибут должен быть фактическим алгоритмом проверки (например, MD5, SHA1, HMACSHA256, HMACSHA384, HMACSHA512) или настраиваемым алгоритмом, подклассом которого является KeyedHashAlgorithm тип.The Validation attribute must be an actual validation algorithm (for example, MD5, SHA1, HMACSHA256, HMACSHA384, HMACSHA512) or a custom algorithm that subclasses the KeyedHashAlgorithm type. Значения AES и 3DES запрещены.The values AES and 3DES are forbidden.

  • Платформа не будет создавать полезные данные только со знаком.The framework will not produce signed-only payloads. Билеты проверки подлинности на формах всегда будут зашифрованы и подписаны независимо от того, как protection атрибут forms элемента задан в файле Web.config.Forms authentication tickets will always be both encrypted and signed, regardless of how the protection attribute of the forms element is set in the Web.config file. Состояние представления всегда будет зашифровано и подписано, если EnableViewStateMac RequireViewStateEncryption для данной страницы задано значение или.View state will always be both encrypted and signed if either EnableViewStateMac or RequireViewStateEncryption is set for a given page.

В результате обновления безопасности, описанного в бюллетене по безопасности Microsoft MS10-070, поведение шифрования по умолчанию одинаково для Framework20SP1 Framework20SP2 параметров и.As a result of the security update that is described in Microsoft security bulletin MS10-070, the default encryption behavior is the same for the Framework20SP1 and Framework20SP2 settings. Изменять поведение по умолчанию не рекомендуется, но если вы хотите это сделать, см. статью Настройка режима шифрования прежних версий в ASP.NET.Changing the default behavior is not recommended, but if you want to do that, see How to configure legacy encryption mode in ASP.NET.

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