MachineKeySection.CompatibilityMode Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define um valor que especifica se serão usados os métodos de criptografia atualizados para o estado de exibição que foram introduzidos após a liberação do .NET Framework versão 2.0 Service Pack 1.
public:
property System::Web::Configuration::MachineKeyCompatibilityMode CompatibilityMode { System::Web::Configuration::MachineKeyCompatibilityMode get(); void set(System::Web::Configuration::MachineKeyCompatibilityMode value); };
[System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=System.Web.Configuration.MachineKeyCompatibilityMode.Framework20SP1)]
public System.Web.Configuration.MachineKeyCompatibilityMode CompatibilityMode { get; set; }
[<System.Configuration.ConfigurationProperty("compatibilityMode", DefaultValue=System.Web.Configuration.MachineKeyCompatibilityMode.Framework20SP1)>]
member this.CompatibilityMode : System.Web.Configuration.MachineKeyCompatibilityMode with get, set
Public Property CompatibilityMode As MachineKeyCompatibilityMode
Valor da propriedade
Um valor que indica se serão usados os métodos de criptografia que foram introduzidos após a liberação do .NET Framework 2.0 SP1.
- Atributos
Comentários
Os métodos de criptografia atualizados em versões posteriores do .NET Framework reduzem o risco de que um invasor possa fazer engenharia reversa do DecryptionKey
valor com êxito. Os métodos de criptografia mais antigos estão disponíveis para manter a compatibilidade com versões anteriores.
Todos os servidores em um farm da Web devem ter a CompatibilityMode propriedade definida com o mesmo valor. Se o servidor que lê um tíquete de autenticação de formulários tiver uma configuração diferente CompatibilityMode do servidor que criou o tíquete, o tíquete não será reconhecido.
Os seguintes valores podem ser especificados para a CompatibilityMode propriedade :
Framework20SP1
. Esse valor especifica que ASP.NET usa métodos de criptografia que estavam disponíveis em versões do ASP.NET anteriores à 2.0 SP2. Use esse valor para todos os servidores em um farm da Web se algum servidor tiver uma versão do .NET Framework anterior à 2.0 SP2. Esse é o valor padrão, a menos que o aplicativo Web.config arquivo tenha otargetFramework
atributo dohttpRuntime
elemento definido como "4.5".Framework20SP2
. Esse valor especifica que ASP.NET usa métodos de criptografia atualizados que foram introduzidos no .NET Framework 2.0 SP2. Use esse valor para todos os servidores em um web farm se todos os servidores tiverem o .NET Framework 2.0 SP2 ou posterior, mas pelo menos um não tiver o .NET Framework 4.5.Framework45
. Melhorias criptográficas para ASP.NET 4.5 estão em vigor. Esse será o valor padrão se o aplicativo Web.config arquivo tiver otargetFramework
atributo dohttpRuntime
elemento definido como "4.5".
Quando essa propriedade é definida Framework45
como , as seguintes restrições estão em vigor:
Se a propriedade DataProtectorType tiver um valor, a propriedade ApplicationName também deverá ter um valor. A DataProtector classe exige que um nome de aplicativo não vazio seja fornecido.
O Validation atributo deve ser um algoritmo de validação real (por exemplo, MD5, SHA1, HMACSHA256, HMACSHA384, HMACSHA512) ou um algoritmo personalizado que subclasse o KeyedHashAlgorithm tipo. Os valores AES e 3DES são proibidos.
A estrutura não produzirá conteúdos somente assinados. Os tíquetes de autenticação de formulários sempre serão criptografados e assinados, independentemente de como o
protection
atributo doforms
elemento é definido no arquivo Web.config. O estado de exibição sempre será criptografado e assinado se ouEnableViewStateMac
RequireViewStateEncryption
estiver definido para uma determinada página.
Como resultado da atualização de segurança descrita no boletim de segurança da Microsoft MS10-070, o comportamento de criptografia padrão é o mesmo para as Framework20SP1
configurações e Framework20SP2
. Não é recomendável alterar o comportamento padrão, mas se você quiser fazer isso, consulte Como configurar o modo de criptografia herdado no ASP.NET.